From d07db5f8ca4fbafc503d6b690bb87cca53c92d42 Mon Sep 17 00:00:00 2001 From: Jade Carino Date: Wed, 14 Aug 2024 13:40:33 +0100 Subject: [PATCH 1/3] Parameterise gradle workflow to support other branches Signed-off-by: Jade Carino --- .github/workflows/build.yaml | 39 +++++++++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index d94401a..547da6e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -26,8 +26,17 @@ env: REGISTRY: ghcr.io NAMESPACE: galasa-dev BRANCH: ${{ github.ref_name }} + ARGO_APP_BRANCH: gh # TODO: remove this parameter and just use env.BRANCH once we update development.galasa.dev/main with these workflows. jobs: + log-github-ref: + name: Log the GitHub ref this workflow is running on (Branch or tag that received dispatch) + runs-on: ubuntu-latest + steps: + - name: Log GitHub ref of workflow + run: | + echo "This workflow is running on GitHub ref ${{ env.BRANCH }}" + build-gradle: name: Build Gradle source code and Docker image for development Maven registry runs-on: ubuntu-latest @@ -52,6 +61,7 @@ jobs: gradle-version: 6.9.2 - name: Build Gradle source code + if: github.event_name == 'push' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.GPG_KEYID }} @@ -64,6 +74,21 @@ jobs: -PtargetMaven=${{ github.workspace }}/repo \ -PjacocoEnabled=true \ -PisMainOrRelease=true + + - name: Build Gradle source code + if: github.event_name == 'workflow_dispatch' # Use the input values provided by the workflow dispatch. + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.GPG_KEYID }} + ORG_GRADLE_PROJECT_signingKey: ${{ secrets.GPG_KEY }} + ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.GPG_PASSPHRASE }} + run: | + gradle check publish \ + -PsourceMaven=https://development.galasa.dev/${{ env.BRANCH }}/maven-repo/wrapping \ + -PcentralMaven=https://repo.maven.apache.org/maven2/ \ + -PtargetMaven=${{ github.workspace }}/repo \ + -PjacocoEnabled=${{ inputs.jacocoEnabled }} \ + -PisMainOrRelease=${{ inputs.isMainOrRelease }} - name: Login to Github Container Registry uses: docker/login-action@v3 @@ -98,14 +123,14 @@ jobs: env: ARGOCD_AUTH_TOKEN: ${{ secrets.ARGOCD_TOKEN }} run: | - docker run --env ARGOCD_AUTH_TOKEN=${{ env.ARGOCD_AUTH_TOKEN }} --rm -v ${{ github.workspace }}:/var/workspace ghcr.io/galasa-dev/argocdcli:main app actions run gh-maven-repos restart --kind Deployment --resource-name gradle-gh --server argocd.galasa.dev + docker run --env ARGOCD_AUTH_TOKEN=${{ env.ARGOCD_AUTH_TOKEN }} --rm -v ${{ github.workspace }}:/var/workspace ghcr.io/galasa-dev/argocdcli:main app actions run ${{ env.ARGO_APP_BRANCH }}-maven-repos restart --kind Deployment --resource-name gradle-${{ env.ARGO_APP_BRANCH }} --server argocd.galasa.dev # Wait for the application to show as healthy in ArgoCD - name: Wait for app health in ArgoCD env: ARGOCD_AUTH_TOKEN: ${{ secrets.ARGOCD_TOKEN }} run: | - docker run --env ARGOCD_AUTH_TOKEN=${{ env.ARGOCD_AUTH_TOKEN }} --rm -v ${{ github.workspace }}:/var/workspace ghcr.io/galasa-dev/argocdcli:main app wait gh-maven-repos --resource apps:Deployment:gradle-gh --health --server argocd.galasa.dev + docker run --env ARGOCD_AUTH_TOKEN=${{ env.ARGOCD_AUTH_TOKEN }} --rm -v ${{ github.workspace }}:/var/workspace ghcr.io/galasa-dev/argocdcli:main app wait ${{ env.ARGO_APP_BRANCH }}-maven-repos --resource apps:Deployment:gradle-${{ env.ARGO_APP_BRANCH }} --health --server argocd.galasa.dev trigger-maven-workflow: name: Trigger Maven workflow @@ -114,7 +139,15 @@ jobs: steps: - name: Trigger Maven workflow dispatch event with GitHub CLI + if: github.event_name == 'push' + env: + GH_TOKEN: ${{ secrets.GALASA_TEAM_GITHUB_TOKEN }} + run: | + gh workflow run build.yaml --repo https://github.com/galasa-dev/maven + + - name: Trigger Maven workflow dispatch event with GitHub CLI + if: github.event_name == 'workflow_dispatch' env: GH_TOKEN: ${{ secrets.GALASA_TEAM_GITHUB_TOKEN }} run: | - gh workflow run build.yaml --repo https://github.com/galasa-dev/maven \ No newline at end of file + gh workflow run build.yaml --repo https://github.com/galasa-dev/maven --ref ${{ env.BRANCH }} -f jacocoEnabled=${{ inputs.jacocoEnabled }} -f isMainOrRelease=${{ inputs.isMainOrRelease }} \ No newline at end of file From 29e99384ad2d94f4f716bb0e704652e91f6f5d02 Mon Sep 17 00:00:00 2001 From: Jade Carino Date: Wed, 14 Aug 2024 13:44:35 +0100 Subject: [PATCH 2/3] Update sourceMaven in both steps Signed-off-by: Jade Carino --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 547da6e..d6a0c81 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -69,7 +69,7 @@ jobs: ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.GPG_PASSPHRASE }} run: | gradle check publish \ - -PsourceMaven=https://repo.maven.apache.org/maven2/ \ + -PsourceMaven=https://development.galasa.dev/${{ env.BRANCH }}/maven-repo/wrapping \ -PcentralMaven=https://repo.maven.apache.org/maven2/ \ -PtargetMaven=${{ github.workspace }}/repo \ -PjacocoEnabled=true \ From e427d47f6c7b39ad3a2541518f4192fba654fce6 Mon Sep 17 00:00:00 2001 From: Jade Carino Date: Wed, 14 Aug 2024 13:46:08 +0100 Subject: [PATCH 3/3] Fix incorrect env var Signed-off-by: Jade Carino --- .github/workflows/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index d6a0c81..0923bbb 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -69,7 +69,7 @@ jobs: ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.GPG_PASSPHRASE }} run: | gradle check publish \ - -PsourceMaven=https://development.galasa.dev/${{ env.BRANCH }}/maven-repo/wrapping \ + -PsourceMaven=https://development.galasa.dev/${{ env.ARGO_APP_BRANCH }}/maven-repo/wrapping \ -PcentralMaven=https://repo.maven.apache.org/maven2/ \ -PtargetMaven=${{ github.workspace }}/repo \ -PjacocoEnabled=true \ @@ -84,7 +84,7 @@ jobs: ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.GPG_PASSPHRASE }} run: | gradle check publish \ - -PsourceMaven=https://development.galasa.dev/${{ env.BRANCH }}/maven-repo/wrapping \ + -PsourceMaven=https://development.galasa.dev/${{ env.ARGO_APP_BRANCH }}/maven-repo/wrapping \ -PcentralMaven=https://repo.maven.apache.org/maven2/ \ -PtargetMaven=${{ github.workspace }}/repo \ -PjacocoEnabled=${{ inputs.jacocoEnabled }} \