From 8618b8a35c9ea56c6fece5acf87ac223fce6a548 Mon Sep 17 00:00:00 2001 From: Gang Li Date: Tue, 19 Dec 2023 21:46:52 +0800 Subject: [PATCH] Github Actions Update * PR build: some step vervion update * Merge build: add docker build and image push steps --- .github/workflows/merge-build.yml | 63 ++++++++++++++++++++++++------- .github/workflows/pr-build.yml | 15 +++++--- 2 files changed, 58 insertions(+), 20 deletions(-) diff --git a/.github/workflows/merge-build.yml b/.github/workflows/merge-build.yml index cd59c6a..3d862bb 100644 --- a/.github/workflows/merge-build.yml +++ b/.github/workflows/merge-build.yml @@ -23,24 +23,23 @@ on: [push] jobs: publish-snapshot: - + name: publish to oss sonatype & push image runs-on: ubuntu-latest - - permissions: + permissions: contents: read packages: write + env: + MAVEN_OPTS: "-Xmx4096m -Xms2048m -XX:MaxMetaspaceSize=4096m -Xss8m" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up JDK - uses: actions/setup-java@v2 + uses: actions/setup-java@v3 with: - java-version: '11' - distribution: 'adopt' - # server-id: sonatype - # server-username: SONATYPE_BOT_USERNAME - # server-password: SONATYPE_BOT_TOKEN + distribution: 'temurin' + architecture: x64 + java-version: 11 - name: maven-settings-xml-action uses: whelk-io/maven-settings-xml-action@v14 @@ -49,12 +48,48 @@ jobs: repositories: '[{ "id": "sonatype", "url": "https://oss.sonatype.org/content/repositories/snapshots/", "releases": {"enabled": "false"}, "snapshots": {"enabled": "true" }}]' servers: '[{ "id": "sonatype", "username": "${{ secrets.SONATYPE_BOT_USERNAME}}", "password": "${{ secrets.SONATYPE_BOT_TOKEN}}" }]' + - name: "Maven Verify" + if: ${{ github.event.repository.fork == true }} + run: mvn -B -e verify + - name: "Maven Build & Deploy Snapshot to Sonatype OSSRH" if: ${{ github.event.repository.fork == false }} + run: mvn -B -e clean deploy -DskipTests -DaltDeploymentRepository=sonatype::default::https://oss.sonatype.org/content/repositories/snapshots/ - run: mvn -B -e deploy -DaltDeploymentRepository=sonatype::default::https://oss.sonatype.org/content/repositories/snapshots/ + - name: Checkout tools repo + uses: actions/checkout@v4 + with: + repository: Commonjava/commonjava-images + path: commonjava-images - - name: "Maven Build" - if: ${{ github.event.repository.fork == true }} + - name: Locate artifacts + id: locate-artifacts + run: | + tarball=$(ls -d $PWD/target/*-runner.jar) + cp "$tarball" "commonjava-images/indy-ui-service/indy-ui-service-runner.jar" - run: mvn -B -e verify + - name: Log in to Quay.io + uses: redhat-actions/podman-login@v1 + with: + username: ${{ secrets.QUAY_USERNAME }} + password: ${{ secrets.QUAY_ROBOT_TOKEN }} + registry: quay.io + + - name: Buildah build + id: buildah-build + uses: redhat-actions/buildah-build@v2 + with: + image: indy-ui-service + tags: ${{ github.ref_name }} + platforms: linux/amd64 + containerfiles: | + commonjava-images/indy-ui-service/actions.Dockerfile + context: commonjava-images/indy-ui-service/ + + - name: Push To quay.io + id: push-to-quay + uses: redhat-actions/push-to-registry@v2 + with: + image: indy-ui-service + tags: latest + registry: quay.io/factory2 diff --git a/.github/workflows/pr-build.yml b/.github/workflows/pr-build.yml index fd9daaa..63ef93e 100644 --- a/.github/workflows/pr-build.yml +++ b/.github/workflows/pr-build.yml @@ -22,18 +22,21 @@ name: PR Build on: [pull_request] jobs: - build: - + verify: + name: PR verify runs-on: ubuntu-latest + env: + MAVEN_OPTS: "-Xmx4096m -Xms2048m -XX:MaxMetaspaceSize=4096m -Xss8m" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up JDK - uses: actions/setup-java@v2 + uses: actions/setup-java@v3 with: - java-version: '11' - distribution: 'adopt' + distribution: 'temurin' + architecture: x64 + java-version: 11 - name: maven-settings-xml-action uses: whelk-io/maven-settings-xml-action@v14