From c136830e532892b57dd2b5337ac366eaf59dab06 Mon Sep 17 00:00:00 2001 From: Eric Wyles <23637493+ericwyles@users.noreply.github.com> Date: Wed, 12 Jun 2024 14:57:32 -0500 Subject: [PATCH] chore: add tests before publishing a release and remove arm64 architecture (#91) ## Description Adds tests before publishing a release. Removes arm64 architecture because it is not supported by mattermost. See: #92 ## Related Issue Fixes #84 ## Type of change - [ ] Bug fix (non-breaking change which fixes an issue) - [x] New feature (non-breaking change which adds functionality) - [ ] Other (security config, docs update, etc) ## Checklist before merging - [x] Test, docs, adr added or updated as needed - [x] [Contributor Guide Steps](https://github.com/defenseunicorns/uds-package-mattermost/blob/main/CONTRIBUTING.md#developer-workflow) followed --------- Co-authored-by: Wayne Starr --- .github/workflows/tag-and-release.yaml | 13 +++++++++---- .github/workflows/test.yaml | 4 ++++ bundle/uds-bundle.yaml | 2 +- tasks.yaml | 10 +++------- tasks/publish.yaml | 23 +++++++++++++---------- tasks/test.yaml | 6 ++++++ 6 files changed, 36 insertions(+), 22 deletions(-) diff --git a/.github/workflows/tag-and-release.yaml b/.github/workflows/tag-and-release.yaml index 5003718a..1a4c522d 100644 --- a/.github/workflows/tag-and-release.yaml +++ b/.github/workflows/tag-and-release.yaml @@ -25,11 +25,12 @@ jobs: publish-package: needs: tag-new-version if: ${{ needs.tag-new-version.outputs.release_created == 'true' }} - runs-on: ubuntu-latest - name: Publish ${{ matrix.flavor }} + runs-on: ${{ matrix.architecture == 'arm64' && 'uds-ubuntu-arm64-4-core' || 'ubuntu-latest' }} strategy: matrix: flavor: [upstream, registry1] + architecture: [amd64] + name: Publish ${{ matrix.flavor }} ${{ matrix.architecture }} permissions: contents: read @@ -46,10 +47,14 @@ jobs: ghToken: ${{ secrets.GITHUB_TOKEN }} - name: Publish Package - run: uds run -f tasks/publish.yaml package --set FLAVOR=${{ matrix.flavor }} + run: UDS_ARCHITECTURE=${{ matrix.architecture }} uds run -f tasks/publish.yaml package --set FLAVOR=${{ matrix.flavor }} + + - name: Debug Output + if: ${{ always() }} + uses: defenseunicorns/uds-common/.github/actions/debug-output@4cea6c8858b9f4db3a3624a6fc046db77e1f4eaa # v0.5.0 - name: Save logs if: always() uses: defenseunicorns/uds-common/.github/actions/save-logs@4cea6c8858b9f4db3a3624a6fc046db77e1f4eaa # v0.5.0 with: - suffix: ${{ matrix.flavor }}-${{ github.run_id }}-${{ github.run_attempt }} + suffix: ${{ matrix.flavor }}-${{ matrix.architecture }}-${{ github.run_id }}-${{ github.run_attempt }} diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 5185996b..7ffb05f0 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -58,6 +58,10 @@ jobs: flavor: ${{ matrix.flavor }} type: ${{ matrix.type }} + - name: Debug Output + if: ${{ always() }} + uses: defenseunicorns/uds-common/.github/actions/debug-output@4cea6c8858b9f4db3a3624a6fc046db77e1f4eaa # v0.5.0 + - name: Save logs if: always() uses: defenseunicorns/uds-common/.github/actions/save-logs@4cea6c8858b9f4db3a3624a6fc046db77e1f4eaa # v0.5.0 diff --git a/bundle/uds-bundle.yaml b/bundle/uds-bundle.yaml index c419e241..9b2b98f8 100644 --- a/bundle/uds-bundle.yaml +++ b/bundle/uds-bundle.yaml @@ -17,7 +17,7 @@ packages: - name: postgres-operator repository: ghcr.io/defenseunicorns/packages/uds/postgres-operator - ref: 1.11.0-uds.0-upstream + ref: 1.11.0-uds.1-upstream overrides: postgres-operator: uds-postgres-config: diff --git a/tasks.yaml b/tasks.yaml index 3c66bc24..dc12dab9 100644 --- a/tasks.yaml +++ b/tasks.yaml @@ -48,15 +48,13 @@ tasks: # CI will execute the following (via uds-common/.github/actions/test) so they need to be here with these names - name: test-package - description: Test the health of a Mattermost deployment + description: Test deploying the current branch to a new cluster actions: - task: create-mm-test-bundle - task: setup:k3d-test-cluster - task: deploy:test-bundle - task: setup:create-doug-user - - task: test:health-check - - task: test:ingress - - task: test:ui + - task: test:all - name: test-upgrade description: Test an upgrade from the latest released package to the current branch @@ -69,6 +67,4 @@ tasks: - task: deploy:test-bundle - cmd: ./uds zarf tools kubectl delete pods --all --namespace mattermost description: "Workaround - restart the pods so the sso configuration will take effect" - - task: test:health-check - - task: test:ingress - - task: test:ui + - task: test:all diff --git a/tasks/publish.yaml b/tasks/publish.yaml index b11b958d..32487f31 100644 --- a/tasks/publish.yaml +++ b/tasks/publish.yaml @@ -1,22 +1,25 @@ includes: + - dependencies: ./dependencies.yaml + - test: ./test.yaml - create: https://raw.githubusercontent.com/defenseunicorns/uds-common/v0.5.0/tasks/create.yaml + - deploy: https://raw.githubusercontent.com/defenseunicorns/uds-common/v0.5.0/tasks/deploy.yaml - publish: https://raw.githubusercontent.com/defenseunicorns/uds-common/v0.5.0/tasks/publish.yaml + - setup: https://raw.githubusercontent.com/defenseunicorns/uds-common/v0.5.0/tasks/setup.yaml tasks: - name: package description: Build and publish the packages - actions: - - description: Create the AMD64 package - task: create:package - with: - architecture: amd64 - - description: Create the ARM64 package - task: create:package - with: - architecture: arm64 + actions: + - task: create:package + - task: dependencies:create + - task: create:test-bundle + - task: setup:k3d-test-cluster + - task: deploy:test-bundle + - task: setup:create-doug-user + - task: test:all - - description: Publish the packages + - description: Publish the package task: publish:package with: # x-release-please-start-version diff --git a/tasks/test.yaml b/tasks/test.yaml index db76892b..b2eb49f6 100644 --- a/tasks/test.yaml +++ b/tasks/test.yaml @@ -1,4 +1,10 @@ tasks: + - name: all + actions: + - task: health-check + - task: ingress + - task: ui + - name: health-check actions: - description: Mattermost Health Check