Skip to content

Commit

Permalink
Split build job and func job
Browse files Browse the repository at this point in the history
  • Loading branch information
chanchiwai-ray committed Mar 4, 2025
1 parent d3834a2 commit ac8afb4
Showing 1 changed file with 42 additions and 14 deletions.
56 changes: 42 additions & 14 deletions .github/workflows/check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72,21 +72,52 @@ jobs:
- name: Run unit tests
run: tox -e unit

func:
build:
needs:
- lint
- unit
name: functional tests
name: build charms
runs-on: ${{ matrix.runs-on }}
timeout-minutes: 120
strategy:
fail-fast: false
matrix:
runs-on: [[ubuntu-22.04]]
steps:
- uses: actions/checkout@v4
with:
submodules: true

- uses: canonical/craft-actions/charmcraft/pack@main
id: build
with:
verbosity: verbose
channel: "3.x/stable"

- name: List the names of the built charms
run: echo "${{ steps.build.outputs.charms}}"

- name: Determine system architecture
run: echo "SYSTEM_ARCH=$(uname -m)" >> $GITHUB_ENV

- name: Upload the tested charms
uses: actions/upload-artifact@v4
with:
name: built_charms_$${{ env.SYSTEM_ARCH }}
path: ./*.charm

func:
needs:
- build
name: functional tests
runs-on: ubuntu-24.04
timeout-minutes: 120
strategy:
fail-fast: false
matrix:
test-command: ['tox -e func']
juju-channel: ["2.9/stable", "3.4/stable", "3.5/stable", "3.6/stable"]
steps:

- uses: actions/checkout@v4
with:
submodules: true
Expand Down Expand Up @@ -130,8 +161,14 @@ jobs:
echo "TEST_JUJU3=1" >> "$GITHUB_ENV" # https://github.com/openstack-charmers/zaza/pull/653
fi
- name: Build the charm
run: charmcraft -v pack
- name: Download the built charms
uses: actions/download-artifact@v4
with:
name: built_charms_$${{ env.SYSTEM_ARCH }}

- name: List the names of the downloaded charms
run: |
ls *.charm
- name: Run tests
run: |
Expand All @@ -151,15 +188,6 @@ jobs:
env:
TEST_JUJU_CHANNEL: ${{ matrix.juju-channel }}

- name: Determine system architecture
run: echo "SYSTEM_ARCH=$(uname -m)" >> $GITHUB_ENV

- name: Upload the tested charms
uses: actions/upload-artifact@v4
with:
name: charm_${{ env.SYSTEM_ARCH }}
path: ./*.charm

# Save output for debugging

- name: Generate debugging information
Expand Down

0 comments on commit ac8afb4

Please sign in to comment.