diff --git a/build.py b/build.py index af9430f..3efe26d 100644 --- a/build.py +++ b/build.py @@ -21,8 +21,7 @@ def release(project): # build() # build.publish() # build.release_in_git() - # release_in_git() - + # release_in_git() @task def build(project): diff --git a/devops_test.py b/devops_test.py index 8d87964..59b1e71 100644 --- a/devops_test.py +++ b/devops_test.py @@ -1,4 +1,5 @@ import json +from enum import Enum def init_project(): # validate_values() @@ -13,22 +14,37 @@ def release_in_git(): class Version(): + class ReleaseLevel(Enum): + SNAPSHOT = 0 + PATCH = 1 + MINOR = 2 + MAJOR = 3 + def __init__(self, config_file_path): self.version = "0.0.0" self.config_file_path = config_file_path print('init project') def parse(self): - if self.config_file_path.split('.').last() == 'json': + if self.config_file_path.split('.')[-1] == 'json': self.__parse_json() def __parse_json(self): with open(self.config_file_path, 'r') as json_file: json_data = json.load(json_file) - print(json_data['version']) - - def increment(self, level): - pass + self.version = json_data['version'] + + def increment(self, level: ReleaseLevel): + match level: + case ReleaseLevel.SNAPSHOT: + if "-SNAPSHOT" not in self.version + self.version = self.version + "-SNAPSHOT" + case ReleaseLevel.PATCH: + pass + case ReleaseLevel.MINOR: + pass + case ReleaseLevel.MAJOR: + pass def get(): pass \ No newline at end of file