diff --git a/.github/workflows/NightlyRelease.yml b/.github/workflows/NightlyRelease.yml index 80b339db..74296ae2 100644 --- a/.github/workflows/NightlyRelease.yml +++ b/.github/workflows/NightlyRelease.yml @@ -59,6 +59,11 @@ on: required: false default: false type: boolean + replacements: + description: 'Multi-line string containing search=replace patterns.' + required: false + default: '' + type: string assets: description: 'Multi-line string containing artifact:file:title asset descriptions.' required: true @@ -170,6 +175,19 @@ jobs: export GH_TOKEN=${{ github.token }} + Replace() { + line="$1" + while IFS=$'\r\n' read -r patternLine; do + # skipp empty lines + [[ "$patternLine" == "" ]] && continue + + pattern="${patternLine%%=*}" + replacement="${patternLine#*=}" + line="${line//"%$pattern%"/"$replacement"}" + done <<<'${{ inputs.replacements }}' + echo "$line" + } + ERRORS=0 # A dictionary of 0/1 to avoid duplicate downloads declare -A downloadedArtifacts @@ -190,6 +208,10 @@ jobs: asset="${asset#"${asset%%[![:space:]]*}"}" title="${title#"${title%%[![:space:]]*}"}" + # apply replacements + asset="$(Replace "${asset}")" + title="$(Replace "${title}")" + echo "Publish asset '${asset}' from artifact '${artifact}' with title '${title}'" echo -n " Checked asset for duplicates ... " if [[ -n "${assetFilenames[$asset]}" ]]; then diff --git a/.github/workflows/_Checking_JobTemplates.yml b/.github/workflows/_Checking_JobTemplates.yml index 1cf5fffa..53ec96ba 100644 --- a/.github/workflows/_Checking_JobTemplates.yml +++ b/.github/workflows/_Checking_JobTemplates.yml @@ -7,8 +7,6 @@ on: jobs: ConfigParams: uses: pyTooling/Actions/.github/workflows/ExtractConfiguration.yml@dev - needs: - - DocCoverage with: package_name: pyDummy diff --git a/.github/workflows/_Checking_Nightly.yml b/.github/workflows/_Checking_Nightly.yml index 6df4383d..88622786 100644 --- a/.github/workflows/_Checking_Nightly.yml +++ b/.github/workflows/_Checking_Nightly.yml @@ -81,11 +81,15 @@ jobs: The following asset categories are provided for pyGHDL: * Platform specific Python wheel package for Ubuntu incl. `pyGHDL...so` * Platform specific Python wheel package for Windows incl. `pyGHDL...dll` + replacements: | + version=2.0 + tool=myTool + prog=program assets: | document: document1.txt: Documentation - document: build.log: Logfile - other: document1.txt: SBOM - other: program.py: Application + document: build.log: Logfile - %tool% - %tool% + other: document1.txt: SBOM - %version% + other: %prog%.py: Application - %tool% - %version% document:!archive1.zip: Archive 1 - zip document:!archive2.tgz: Archive 2 - tgz document:!archive3.tar.gz: Archive 3 - tar.gz