diff --git a/.github/workflows/github-actions-build.yml b/.github/workflows/github-actions-build.yml new file mode 100644 index 0000000..c962671 --- /dev/null +++ b/.github/workflows/github-actions-build.yml @@ -0,0 +1,40 @@ +name: Java CI + +# Trigger workflow on push or pull_request +# Note - the first pull_request from a forked repo will need to be given approval to run +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Set up JDK 11 + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'adopt' + + - name: Cache Maven Repo + uses: actions/cache@v2 + with: + path: ~/.m2 + key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2 + + - name: Build Test and Verify + run: mvn -B -U clean install -Dmaven.javadoc.skip=true + + - name: SonarCloud Scan + run: | + if ["$SONAR_TOKEN" == ""]; then + echo "Sonar secure variables NOT available" + else + echo "Sonar secure variables ARE available" + mvn -B sonar:sonar -Dsonar.projectKey="bordertech-java-common" -Dsonar.organization="bordertech-github" -Dsonar.host.url="https://sonarcloud.io" + fi + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index d3957c7..0000000 --- a/.travis.yml +++ /dev/null @@ -1,22 +0,0 @@ -dist: trusty - -cache: - directories: - - $HOME/.m2 - -addons: - sonarcloud: - organization: "bordertech-github" - token: $SONAR_TOKEN - -before_install: -- echo "MAVEN_OPTS='-Xmx512m -XX:MaxPermSize=128m'" > ~/.mavenrc -- mvn clean - -language: Java -jdk: - - oraclejdk8 - -## Travis installs the project with the following maven command:- "mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V" -script: - - mvn package sonar:sonar -Dsonar.projectKey="bordertech-java-common" diff --git a/CHANGELOG.md b/CHANGELOG.md index 82d636e..64d2a08 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ # Change log ## Release in-progress +* Switch from travis-ci to GitHub Actions #75 ## 1.0.17 * Update plugins to latest version diff --git a/README.md b/README.md index 594e672..0b7a5bd 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # java-common ## Status -[![Build Status](https://travis-ci.com/BorderTech/java-common.svg?branch=master)](https://travis-ci.com/BorderTech/java-common) +[![Build Status](https://github.com/BorderTech/java-common/actions/workflows/github-actions-build.yml/badge.svg)](https://github.com/BorderTech/java-common/actions/workflows/github-actions-build.yml) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=bordertech-java-common&metric=alert_status)](https://sonarcloud.io/dashboard?id=bordertech-java-common) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=bordertech-java-common&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=bordertech-java-common) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/fd8ef044a86d44e8931410382035f8e2)](https://www.codacy.com/gh/BorderTech/java-common?utm_source=github.com&utm_medium=referral&utm_content=BorderTech/java-common&utm_campaign=Badge_Grade)