Skip to content

ci: Publish bundle to charmhub #13

ci: Publish bundle to charmhub

ci: Publish bundle to charmhub #13

name: Publish bundle to charmhub
on:
push:
branches:
- main
- track/**
paths:
- releases/**
# only for testing purposes
pull_request:
paths:
- releases/**
jobs:
get-releases-affected:
name: Get releases affected
runs-on: ubuntu-22.04
outputs:
releases_affected: ${{ steps.get-releases-affected.outputs.releases_affected_json }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Get files changed
id: changed-files
uses: tj-actions/changed-files@v37
- name: Get releases affected
id: get-releases-affected
run: |
python .github/workflows/test.py ${{ steps.changed-files.outputs.all_changed_files }}
# run: bash .github/workflows/get-releases
# for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
# echo "$file was changed"
# done
# get-releases-affected:
# [..]
# do we have tests at the moment?
# run-tests-for-releases-affected:
# needs: get-releases-affected
# [..]
publish-bundle-for-releases-affected:
name: Publish bundle for releases affected to corresponding Charmhub channels
runs-on: ubuntu-22.04
needs: [get-releases-affected]
# needs: [get-releases-affected, run-tests-for-releases-affected]
strategy:
fail-fast: false
matrix:
release: ${{ fromJson(needs.get-releases-affected.outputs.releases_affected) }}
steps:
- name: Publish bundle for release ${{ matrix.release }} to Charmhub
run: echo received ${{ matrix.release }}
# uses: canonical/charming-actions/[email protected]
# with:
# credentials: ${{ secrets.CHARMCRAFT_CREDENTIALS }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# charm-path: ${{ matrix.charm-path }}
# channel: ${{ steps.parse-inputs.outputs.destination_channel }}
# tag-prefix: ${{ steps.parse-inputs.outputs.tag_prefix }}