From b329e9d53c2e0859212847593a3297bf5e1ccdf2 Mon Sep 17 00:00:00 2001 From: shokakucarrier Date: Tue, 14 Nov 2023 22:49:57 +0800 Subject: [PATCH] add github actions --- .github/workflows/maven-build.yml | 51 ++++++++++++++++++++++++++ .github/workflows/merge-build.yml | 60 ------------------------------- .github/workflows/pr-build.yml | 44 ----------------------- 3 files changed, 51 insertions(+), 104 deletions(-) create mode 100644 .github/workflows/maven-build.yml delete mode 100644 .github/workflows/merge-build.yml delete mode 100644 .github/workflows/pr-build.yml diff --git a/.github/workflows/maven-build.yml b/.github/workflows/maven-build.yml new file mode 100644 index 00000000..6187f369 --- /dev/null +++ b/.github/workflows/maven-build.yml @@ -0,0 +1,51 @@ +name: build on maven + +on: + watch: + types: [started] + pull_request: + types: [opened, reopened, edited, synchronize, ready_for_review] + push: + branches: + - main + - master + + workflow_dispatch: + +jobs: + build: + name: Build with maven + runs-on: ubuntu-latest + env: + MAVEN_OPTS: "-Xmx4096m -Xms2048m -XX:MaxMetaspaceSize=4096m -Xss8m" + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 11 for x64 + uses: actions/setup-java@v3 + with: + java-version: '11' + distribution: 'temurin' + architecture: x64 + + - uses: s4u/maven-settings-action@v2.8.0 + with: + sonatypeSnapshots: true + + - name: Build the Maven verify phase + run: mvn -B -V clean verify -Prun-its -Pci + + + - uses: s4u/maven-settings-action@v2.8.0 + if: ${{ github.event_name == 'push' }} + with: + servers: | + [{ + "id": "sonatype-nexus-snapshots", + "username": "${{ secrets.SONATYPE_BOT_USERNAME }}", + "password": "${{ secrets.SONATYPE_BOT_TOKEN }}" + }] + + - name: Deploy the artifact + if: ${{ github.event_name == 'push' }} + run: mvn help:effective-settings -B -V clean deploy -e diff --git a/.github/workflows/merge-build.yml b/.github/workflows/merge-build.yml deleted file mode 100644 index 7a8cb1f6..00000000 --- a/.github/workflows/merge-build.yml +++ /dev/null @@ -1,60 +0,0 @@ -# -# Copyright (C) 2020-2023 Red Hat, Inc. (https://github.com/commonjava/o11yphant) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# This workflow will build a Java project with Maven -# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven - -name: Merge / Push Build - -on: [push] - -jobs: - publish-snapshot: - - runs-on: ubuntu-latest - - permissions: - contents: read - packages: write - - steps: - - uses: actions/checkout@v2 - - - name: Set up JDK - uses: actions/setup-java@v2 - with: - java-version: '11' - distribution: 'adopt' - # server-id: sonatype - # server-username: SONATYPE_BOT_USERNAME - # server-password: SONATYPE_BOT_TOKEN - - - name: maven-settings-xml-action - uses: whelk-io/maven-settings-xml-action@v14 - if: ${{ github.event.repository.fork == false }} - with: - 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 Build & Deploy Snapshot to Sonatype OSSRH" - if: ${{ github.event.repository.fork == false }} - - run: mvn -B -e deploy -DaltDeploymentRepository=sonatype::default::https://oss.sonatype.org/content/repositories/snapshots/ - - - name: "Maven Build" - if: ${{ github.event.repository.fork == true }} - - run: mvn -B -e -Prun-its verify diff --git a/.github/workflows/pr-build.yml b/.github/workflows/pr-build.yml deleted file mode 100644 index 2e0dcfc5..00000000 --- a/.github/workflows/pr-build.yml +++ /dev/null @@ -1,44 +0,0 @@ -# -# Copyright (C) 2020-2023 Red Hat, Inc. (https://github.com/commonjava/o11yphant) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# This workflow will build a Java project with Maven -# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven - -name: PR Build - -on: [pull_request] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - - name: Set up JDK - uses: actions/setup-java@v2 - with: - java-version: '11' - distribution: 'adopt' - - - name: maven-settings-xml-action - uses: whelk-io/maven-settings-xml-action@v14 - with: - repositories: '[{ "id": "sonatype", "url": "https://oss.sonatype.org/content/repositories/snapshots/", "releases": {"enabled": "false"}, "snapshots": {"enabled": "true" }}]' - - - name: Build with Maven - run: mvn -Prun-its -B -e verify