feat(app-template): Release version 3.7.1

This commit is contained in:
Bernd Schorgers 2025-02-11 15:05:55 +01:00
parent 433f6d132b
commit b93c4199f7
No known key found for this signature in database
GPG key ID: BC5E2BD907F9A8EC
10 changed files with 77 additions and 34 deletions

View file

@ -33,27 +33,27 @@ runs:
pattern: ${{ inputs.artifactPrefix }}${{ inputs.artifactPattern }}
- name: Copy artifacts to gh-pages structure
shell: bash
working-directory: artifacts
env:
ARTIFACT_PREFIX: ${{ inputs.artifactPrefix }}
TARGET_FOLDER: ${{ inputs.targetFolder }}
run: |
while IFS= read -d $'\0' -r ARTIFACT ; do
echo ${ARTIFACT}
prefix_removed_chart=${ARTIFACT/#$ARTIFACT_PREFIX}
DELIMITER='__'
s=${prefix_removed_chart}${DELIMITER}
ARTIFACT_PATH_PARTS=();
while [[ $s ]]; do
ARTIFACT_PATH_PARTS+=( "${s%%"${DELIMITER}"*}" );
s=${s#*"${DELIMITER}"};
done;
uses: actions/github-script@v7
with:
script: |
const dstFolder = "${{ inputs.targetFolder }}";
const artifactPrefix = "${{ inputs.artifactPrefix }}";
CHART_FOLDER=${ARTIFACT_PATH_PARTS[0]}
mkdir -p "${TARGET_FOLDER}/${CHART_FOLDER}"
cp ${ARTIFACT}/* ${TARGET_FOLDER}/${CHART_FOLDER}/
done < <(find . -mindepth 1 -maxdepth 1 -type d -print0)
baseDir = process.cwd();
artifactsDir = `${baseDir}/artifacts`;
const globber = await glob.create(`${artifactsDir}/${artifactPrefix}*/*.tgz`);
for await (const file of globber.globGenerator()) {
relativePath = file.startsWith(artifactsDir) ? file.slice(artifactsDir.length) : file;
artifactFolder = relativePath.split('/')[1];
artifactFolderStrippedPrefix = artifactFolder.startsWith(artifactPrefix) ? artifactFolder.slice(artifactPrefix.length) : artifactFolder;
chartType = artifactFolderStrippedPrefix.split('__')[0];
targetFolder = `${baseDir}/${dstFolder}/${chartType}`;
console.log(`Copying ${file} to ${targetFolder}/`);
await io.mkdirP(targetFolder);
await io.cp(file, `${targetFolder}/`);
}
- name: Update chart index
shell: bash
@ -67,4 +67,3 @@ runs:
repository: ${{ inputs.targetFolder }}
branch: ${{ inputs.targetBranch }}
file_pattern: "index.yaml **/*.tgz"
disable_globbing: true

View file

@ -73,6 +73,36 @@ jobs:
artifactPrefix: chart__
helmVersion: ${{ inputs.helmVersion }}
tag-charts:
name: Tag charts
runs-on: ubuntu-22.04
needs:
- package-charts
strategy:
matrix:
charts: ${{ fromJSON(inputs.charts) }}
fail-fast: false
steps:
- name: Checkout source branch
if: ${{ !contains(fromJSON(inputs.excludedChartsRelease), matrix.charts) }}
uses: actions/checkout@v4
- name: Grab chart details
id: chart-details
shell: bash
env:
ROOT_DIR: charts
CHART_DIR: "${{ matrix.charts }}"
run: |
PARENT_DIR=$(basename $(dirname "${ROOT_DIR}/${CHART_DIR}"))
echo "name=$(yq '.name' ${ROOT_DIR}/${CHART_DIR}/Chart.yaml)" >> "$GITHUB_OUTPUT"
echo "version=$(yq '.version' ${ROOT_DIR}/${CHART_DIR}/Chart.yaml)" >> "$GITHUB_OUTPUT"
- name: Create tag
uses: EndBug/latest-tag@latest
with:
ref: ${{ steps.chart-details.outputs.name }}-${{ steps.chart-details.outputs.version }}
release-charts-to-github-pages:
name: Release charts to GitHub Pages
runs-on: ubuntu-22.04

View file

@ -8,7 +8,6 @@ on:
push:
branches:
- main
- rework-publishing-ci # TODO: Remove this
paths:
- "charts/**"
@ -76,7 +75,14 @@ jobs:
needs:
- prepare
- release-library-charts
if: ${{ needs.prepare.outputs.applicationChartsToRelease != '[]' }}
if: >-
${{
always() &&
needs.prepare.outputs.applicationChartsToRelease != '[]' &&
(
contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')
)
}}
uses: ./.github/workflows/charts-release-steps.yaml
permissions:
pages: write