From 65a6445ce73377e4053b06853a4b55c726860aaf Mon Sep 17 00:00:00 2001 From: Benjamin Renard Date: Wed, 14 Dec 2022 12:49:01 +0100 Subject: [PATCH] Use underscore instead of dash to compute repository/snapshot name Dash are commonly used in distribution, prefix and component name. Prefer using underscore to easily split distribution/prefix/component from names. --- README.md | 10 +++++----- aptly-publish | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index f26e6d1..7462b68 100644 --- a/README.md +++ b/README.md @@ -6,14 +6,14 @@ This plugin will try to : - List all changes files in the specified directory and filter on the specified source package name (if specified) - Iter on detected changes files and foreach of then: - the changes file is parsed to detect the source package name, the distribution and included files - - the repository name is computed (if not specified). __Format:__ `{prefix}-{distribution}-{component}`. __Note:__ if the default prefix is specified (`.`), it will not be used to compute the repository name. + - the repository name is computed (if not specified). __Format:__ `{prefix}_{distribution}_{component}`. __Note:__ if the default prefix is specified (`.`), it will not be used to compute the repository name. - the current published distribution is retreived using APTLY Publish API to: - check it was already manally published a first time - check it used a snapshot kind of sources - retreive other components source snapshot - Upload the changes file and all its included files using APTLY File Upload API in a directory named as the source package - Include the changes file using APTLY Local Repos API - - Compute a snapshot name for the repository based on the current date and the repository name. __Format:__ `YYYYMMDD-HHMMSS-{repository name}` + - Compute a snapshot name for the repository based on the current date and the repository name. __Format:__ `YYYYMMDD-HHMMSS_{repository name}` - Create a snapshot of the repository using APTLY Local Repos API - Update the published distribution with this new snapshot as source of the specified component and keeping other components source snapshot. @@ -38,7 +38,7 @@ pipeline: from_secret: aptly_api_password prefix: debian repo_component: main - repo_name: debian-stable-main + repo_name: debian_stable_main path: dist source_name: myproject max_retries: 2 @@ -85,7 +85,7 @@ publish: APTLY_API_USERNAME: myproject APTLY_PREFIX: "debian" APTLY_REPO_COMPONENT: "main" - APTLY_REPO_NAME: "debian-stable-main" + APTLY_REPO_NAME: "debian_stable_main" APTLY_PATH: "dist" APTLY_SOURCE_NAME: "myproject" APTLY_MAX_RETRIES: 2 @@ -98,4 +98,4 @@ publish: - if: $CI_COMMIT_TAG ``` -The parameters are passed using environment variables as designed with a Woodpecker CI plugin. Consequently, you could refer to the previous section for details about these parameters. For the password to request Aptly API, you have to set the `APTLY_API_PASSWORD` CI variable in your Gitlab project configuration (be sure to check _Masked variable_). \ No newline at end of file +The parameters are passed using environment variables as designed with a Woodpecker CI plugin. Consequently, you could refer to the previous section for details about these parameters. For the password to request Aptly API, you have to set the `APTLY_API_PASSWORD` CI variable in your Gitlab project configuration (be sure to check _Masked variable_). diff --git a/aptly-publish b/aptly-publish index bb4b9e7..47ff573 100755 --- a/aptly-publish +++ b/aptly-publish @@ -90,9 +90,9 @@ def get_repo_name(dist): """ Compute and retreive repository name """ if REPO_NAME: return REPO_NAME - value = f'{dist}-{REPO_COMPONENT}' + value = f'{dist}_{REPO_COMPONENT}' if PREFIX != ".": - value = f'{PREFIX}-{value}' + value = f'{PREFIX}_{value}' return value @@ -251,7 +251,7 @@ for changes_file in changes_files: sys.exit(1) # Create a snapshot of the repository - snap_name = datetime.datetime.now().strftime(f'%Y%m%d-%H%M%S-{repo_name}') + snap_name = datetime.datetime.now().strftime(f'%Y%m%d-%H%M%S_{repo_name}') print(f'Create new snapshot "{snap_name}" of repository "{repo_name}"') url = f'{API_URL}/repos/{repo_name}/snapshots'