def verify_release_pre_requisites(version): if version == "": print_error("Wrong version format") sys.exit(1) release_notes = read_release_notes(release_note_file_path) if release_notes is None or release_notes == "": print_error("Release notes is not consistent with version '%s'" % version) sys.exit(1)
def bintray_upload(new_release_version): bintray_user = "******" bintray_api_key = "BINTRAY_API_KEY" if not bintray_user in os.environ: print_error("Env variable '%s' is not defined" % bintray_user) return False if not bintray_api_key in os.environ: print_error("Env variable '%s' is not defined" % bintray_api_key) return False return execute_gradle(tasks=['bintrayUpload'])
def publish_release_notes(branch_name, new_release_version, release_note_file_path): repository_path = "REPOSITORY_PATH" repository_token = "REPOSITORY_TOKEN" if not repository_path in os.environ: print_error("Env variable '%s' is not defined" % repository_path) return False if not repository_token in os.environ: print_error("Env variable '%s' is not defined" % repository_token) return False tag_branch = get_tag_branch(new_release_version) if tag_branch is None or tag_branch.strip(" ") != branch_name: print_error("Tag '%s' not exist" % new_release_version) return False release_notes = read_release_notes(release_note_file_path) body = { 'tag_name': new_release_version, 'target_commitish': branch_name, 'name': 'Alpha Release', 'body': release_notes, 'draft': True, 'prerelease': False } response = requests.post(url=os.environ[repository_path], auth=('token', os.environ[repository_token]), json=body) if response.status_code >= 300: print_error(response.text) return False return True
print_error("Release notes is not consistent with version '%s'" % version) sys.exit(1) if __name__ == '__main__': print('Starting release process') stages = { 'run_tests': [run_tests], 'bintray_upload': [bintray_upload], 'send_release_notes': [send_release_notes] } if len(sys.argv) != 2: print_error("Wrong number of arguments") sys.exit(1) print('Changing to clappr dir') from_release_to_clappr_dir() stage = sys.argv[1] version = get_gradle_version(release_version_regex) verify_release_pre_requisites(version) execute_stage(version, stages, stage) print('Changing back to release dir') from_clappr_to_release_dir() print_success()
def verify_snapshot_pre_requisites(version): if version == "": print_error("Wrong version format") sys.exit(1)
def execute_git(commands): for task in commands: if not execute_command(command='git', attributes=task): print_error("Can not execute git command!") return False return True