feat: fixed version release for CE #1
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
| # Effective 2026-04-24, we no longer publish images to a public Docker Hub. | |
| name: Build, Test, and Publish EE | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| version: | |
| description: 'Camunda EE version to build, test, and publish (e.g., 7.24.8)' | |
| snapshot: | |
| description: 'Whether the version is a snapshot' | |
| pull_request: | |
| jobs: | |
| build-and-test-ee: | |
| if: github.event.pull_request.head.repo.full_name == github.repository || github.event_name == 'workflow_dispatch' | |
| runs-on: ${{ matrix.RUNNER }} | |
| strategy: | |
| matrix: | |
| DISTRO: [tomcat, wildfly, run] | |
| RUNNER: [ubuntu-22.04, aws-arm-core-4-default] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Import Secrets | |
| id: secrets | |
| uses: hashicorp/vault-action@v3.4.0 | |
| with: | |
| url: ${{ secrets.VAULT_ADDR }} | |
| method: approle | |
| roleId: ${{ secrets.VAULT_ROLE_ID }} | |
| secretId: ${{ secrets.VAULT_SECRET_ID }} | |
| exportEnv: false | |
| secrets: | | |
| secret/data/products/cambpm/ci/nexus NEXUS_APP_CAMUNDA_COM_USR | NEXUS_USER; | |
| secret/data/products/cambpm/ci/nexus NEXUS_APP_CAMUNDA_COM_PSW | NEXUS_PASS; | |
| secret/data/products/cambpm/ci/harbor username | HARBOR_USERNAME; | |
| secret/data/products/cambpm/ci/harbor password | HARBOR_PASSWORD; | |
| - name: Login to Harbor | |
| if: github.event_name == 'workflow_dispatch' | |
| uses: docker/login-action@v3 | |
| with: | |
| registry: registry.camunda.cloud | |
| username: ${{ steps.secrets.outputs.HARBOR_USERNAME }} | |
| password: ${{ steps.secrets.outputs.HARBOR_PASSWORD }} | |
| - name: Build | |
| run: ./pipeline.sh | |
| env: | |
| DISTRO: ${{ matrix.DISTRO }} | |
| EE: true | |
| NEXUS_PASS: ${{ steps.secrets.outputs.NEXUS_PASS }} | |
| NEXUS_USER: ${{ steps.secrets.outputs.NEXUS_USER }} | |
| VERSION: ${{ github.event.inputs.version }} | |
| SNAPSHOT: ${{ github.event.inputs.snapshot }} | |
| PUSH_REGISTRY: ${{ github.event_name == 'workflow_dispatch' && 'registry.camunda.cloud/team-cambpm' || '' }} | |
| - name: Test | |
| run: ./test.sh | |
| working-directory: test | |
| env: | |
| DISTRO: ${{ matrix.DISTRO }} | |
| EE: true | |
| VERSION: ${{ github.event.inputs.version }} | |
| SNAPSHOT: ${{ github.event.inputs.snapshot }} | |
| create-manifests-ee: | |
| if: github.event_name == 'workflow_dispatch' | |
| needs: build-and-test-ee | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| matrix: | |
| DISTRO: [tomcat, wildfly, run] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Import Secrets | |
| id: secrets | |
| uses: hashicorp/vault-action@v3.4.0 | |
| with: | |
| url: ${{ secrets.VAULT_ADDR }} | |
| method: approle | |
| roleId: ${{ secrets.VAULT_ROLE_ID }} | |
| secretId: ${{ secrets.VAULT_SECRET_ID }} | |
| exportEnv: false | |
| secrets: | | |
| secret/data/products/cambpm/ci/harbor username | HARBOR_USERNAME; | |
| secret/data/products/cambpm/ci/harbor password | HARBOR_PASSWORD; | |
| - name: Login to Harbor | |
| uses: docker/login-action@v3 | |
| with: | |
| registry: registry.camunda.cloud | |
| username: ${{ steps.secrets.outputs.HARBOR_USERNAME }} | |
| password: ${{ steps.secrets.outputs.HARBOR_PASSWORD }} | |
| - name: Create multi-arch manifests | |
| run: ./create-manifests.sh | |
| env: | |
| DISTRO: ${{ matrix.DISTRO }} | |
| EE: true | |
| VERSION: ${{ github.event.inputs.version }} | |
| SNAPSHOT: ${{ github.event.inputs.snapshot }} | |
| PUSH_REGISTRY: registry.camunda.cloud/team-cambpm | |