Migration to the new AWS Maven repository #42
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
| name: Standard Build | |
| on: | |
| push: | |
| # You should use this (instead of push) for large, time and resource-consuming codebases. | |
| # build.sh uses CI_SCHEDULE_PERIOD to decide if there has been changes recently that actually need | |
| # a rebuild. | |
| # | |
| #schedule: | |
| # m h d M wd(MON-SUN) | |
| #- cron: '0 7 * * *' | |
| workflow_dispatch: | |
| inputs: | |
| # These can be set when the build is invoked manually, from GH Actions. | |
| # | |
| # Set BOTH when you want to trigger a new release. The build script will | |
| # switch Maven to the new release, deploy, tag git, move Maven to the new snapshot | |
| # | |
| NEW_RELEASE_VER: | |
| description: "New Release Version" | |
| required: false | |
| NEW_SNAPSHOT_VER: | |
| description: "New Snapshot Version" | |
| required: false | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Code checkout | |
| uses: actions/checkout@v3 | |
| - name: Set up JDK | |
| uses: actions/setup-java@v3 | |
| with: | |
| java-version: 17 | |
| distribution: 'temurin' | |
| settings-path: ${{ github.workspace }} # location for the settings.xml file | |
| - name: Cache Maven packages | |
| uses: actions/cache@v3 | |
| with: | |
| path: ~/.m2 | |
| key: ${{ runner.os }}-m2-v4-${{ hashFiles('**/pom.xml') }} | |
| restore-keys: ${{ runner.os }}-m2-v4 | |
| - name: Build | |
| env: | |
| KNET_REPO_USER: ${{secrets.KNET_REPO_USER}} | |
| KNET_REPO_PASSWORD: ${{secrets.KNET_REPO_PASSWORD}} | |
| GIT_USER: ${{secrets.GIT_USER}} | |
| GIT_PASSWORD: ${{github.token}} | |
| GIT_USER_EMAIL: ${{secrets.GIT_USER_EMAIL}} | |
| NEW_RELEASE_VER: ${{github.event.inputs.NEW_RELEASE_VER}} | |
| NEW_SNAPSHOT_VER: ${{github.event.inputs.NEW_SNAPSHOT_VER}} | |
| CI_TRIGGERING_EVENT: ${{github.event_name}} | |
| # If you use on: schedule:, this will tell build.sh how often you try to trigger a build | |
| # It uses it to know if there are git changes since the last scheduled build | |
| CI_SCHEDULE_PERIOD: 4 # hours | |
| # This is only needed with certain builds that further trigger Jenkins jobs (eg, Ondex) | |
| KNET_JENKINS_TOKEN: ${{secrets.KNET_JENKINS_TOKEN}} | |
| run: | | |
| mkdir -p ci-build | |
| export CI_DIR_URL="https://raw.githubusercontent.com/Rothamsted/knetminer-common/master/ci-build" | |
| wget "$CI_DIR_URL/install.sh" -O ci-build/install.sh | |
| bash ./ci-build/install.sh | |
| bash ./ci-build/build.sh |