Files
Inventaire-gestion/Scripts/maj_version.py

52 lines
1.2 KiB
Python

import sys
from pathlib import Path
from datetime import date
def lire_version(path: Path):
if not path.exists():
return [1, 0, 0]
contenu = path.read_text(encoding="utf-8").strip().splitlines()
if not contenu:
return [1, 0, 0]
version_str = contenu[0].strip()
try:
parts = [int(x) for x in version_str.split(".")]
while len(parts) < 3:
parts.append(0)
return parts[:3]
except ValueError:
return [1, 0, 0]
def ecrire_version(path: Path, version):
version_str = ".".join(str(x) for x in version)
today = date.today().isoformat()
texte = f"{version_str}\n{today}\n"
path.write_text(texte, encoding="utf-8")
return version_str
def increment_patch(version):
version[2] += 1
return version
def main():
if len(sys.argv) < 2:
print("Usage : python maj_version.py chemin_du_VERSION.txt")
sys.exit(1)
version_file = Path(sys.argv[1])
version = lire_version(version_file)
version = increment_patch(version)
new_version_str = ecrire_version(version_file, version)
print(f"Nouvelle version : {new_version_str}")
if __name__ == "__main__":
main()