diff --git a/receivers/electron/scripts/deploy.py b/receivers/electron/scripts/deploy.py index 7851f02..216180a 100644 --- a/receivers/electron/scripts/deploy.py +++ b/receivers/electron/scripts/deploy.py @@ -10,11 +10,15 @@ ACCESS_KEY_ID = os.environ.get('R2_ACCESS_KEY_ID') SECRET_ACCESS_KEY = os.environ.get('R2_SECRET_ACCESS_KEY') BUCKET_NAME = os.environ.get('R2_BUCKET_NAME') -CACHE_VERSION_AMOUNT = int(os.environ.get('FCAST_CACHE_VERSION_AMOUNT', default="-1")) DEPLOY_DIR = os.environ.get('FCAST_DO_RUNNER_DEPLOY_DIR') TEMP_DIR = os.path.join(DEPLOY_DIR, 'temp') LOCAL_CACHE_DIR = os.path.join(DEPLOY_DIR, 'cache') +# Customizable CI parameters +CACHE_VERSION_AMOUNT = int(os.environ.get('CACHE_VERSION_AMOUNT', default="-1")) +RELEASE_CANDIDATE = bool(os.environ.get('RELEASE_CANDIDATE', default=False)) +RELEASE_CANDIDATE_VERSION = int(os.environ.get('RELEASE_CANDIDATE_VERSION', default="1")) + # Utility functions def compare_versions(x, y): x_parts = x.split('.') @@ -99,7 +103,14 @@ def upload_local_cache(): local_files = [] for root, _, files in os.walk(LOCAL_CACHE_DIR): for filename in files: - local_files.append(os.path.relpath(os.path.join(root, filename), LOCAL_CACHE_DIR)) + rel_path = os.path.relpath(os.path.join(root, filename), LOCAL_CACHE_DIR) + + if RELEASE_CANDIDATE: + rc_path = rel_path[rel_path.rfind('.'):] + f'_rc{RELEASE_CANDIDATE_VERSION}' + rel_path[:rel_path.rfind('.')] + os.rename(rel_path, rc_path) + rel_path = rc_path + + local_files.append(rel_path) for file_path in local_files: if file_path not in map(lambda x: x['Key'], bucket_files):