test: change in kargo library to trigger full chart release #35
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: manage_release | |
| # Triggered on every push to master that touches charts/, | |
| # or manually via workflow_dispatch with an optional chart name. | |
| on: | |
| push: | |
| branches: [master] | |
| paths: | |
| - 'charts/**' | |
| workflow_dispatch: | |
| inputs: | |
| charts: | |
| description: "Chart(s) to release, space-separated (eg: geokoder trakkar). Leave empty for automatic detection." | |
| required: false | |
| default: "" | |
| dev: | |
| description: "Force dev release (0.0.0-dev) even if tag does not exist" | |
| required: false | |
| default: "false" | |
| type: boolean | |
| # Ensure only one release pipeline runs at a time | |
| # to avoid concurrent writes to the S3 index.yaml | |
| concurrency: | |
| group: manage_release | |
| cancel-in-progress: false | |
| jobs: | |
| # Detect which charts need to be released | |
| detect: | |
| name: Detect charts | |
| runs-on: ubuntu-22.04 | |
| outputs: | |
| charts: ${{ steps.compute.outputs.charts }} | |
| has_charts: ${{ steps.compute.outputs.has_charts }} | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| submodules: true | |
| - name: Init runner | |
| run: bash ./scripts/init_runner.sh ${{ github.job }} | |
| - name: Detect charts | |
| id: compute | |
| env: | |
| GITHUB_EVENT_NAME: ${{ github.event_name }} | |
| GITHUB_EVENT_BEFORE: ${{ github.event.before }} | |
| GITHUB_EVENT_AFTER: ${{ github.event.after }} | |
| INPUT_CHART: ${{ github.event.inputs.charts }} | |
| run: bash ./scripts/detect_charts.sh | |
| # Release the detected charts | |
| release_charts: | |
| name: Release charts | |
| runs-on: ubuntu-22.04 | |
| needs: detect | |
| if: needs.detect.outputs.has_charts == 'true' | |
| permissions: | |
| contents: write # required to create and push git tags | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| submodules: true | |
| - name: Init runner | |
| run: bash ./scripts/init_runner.sh ${{ github.job }} | |
| - name: Setup workspace | |
| env: | |
| KALISIO_GITHUB_URL: ${{ secrets.KALISIO_GITHUB_URL }} | |
| SOPS_AGE_KEY: ${{ secrets.SOPS_AGE_KEY }} | |
| run: bash ./scripts/setup_workspace.sh | |
| - name: Release charts | |
| env: | |
| SOPS_AGE_KEY: ${{ secrets.SOPS_AGE_KEY }} | |
| FORCE_DEV: ${{ github.event.inputs.dev || 'false' }} | |
| run: bash ./scripts/build_release.sh -p ${{ needs.detect.outputs.charts }} |