diff --git a/.github/workflows/merge.yml b/.github/workflows/merge.yml new file mode 100644 index 0000000..0b6cfb7 --- /dev/null +++ b/.github/workflows/merge.yml @@ -0,0 +1,37 @@ +--- +name: Merges + +# yamllint disable-line rule:truthy +on: + push: + branches: + - master + +jobs: + merge: + runs-on: ubuntu-latest + env: + MAVEN_CLI_OPTS: "-s .m2/settings.xml --batch-mode" + steps: + - name: Set Maven Options + run: + echo "::set-env name=MAVEN_OPTS::-Dmaven.repo.local=$HOME/.m2/repository" + - uses: actions/checkout@v2 + - name: Set up Java 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Cache Packages + uses: actions/cache@v1 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven- + - name: Build and Run Tests + run: mvn $MAVEN_CLI_OPTS install + - name: Archive SNAPSHOTs + uses: actions/upload-artifact@v1 + with: + name: snapshot + path: target diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml new file mode 100644 index 0000000..587f12d --- /dev/null +++ b/.github/workflows/pull_request.yml @@ -0,0 +1,32 @@ +--- +name: Pull Requests + +# yamllint disable-line rule:truthy +on: + pull_request: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + env: + MAVEN_CLI_OPTS: "-s .m2/settings.xml --batch-mode" + steps: + - name: Set Maven Options + run: + echo "::set-env name=MAVEN_OPTS::-Dmaven.repo.local=$HOME/.m2/repository" + - uses: actions/checkout@v2 + - name: Set up Java 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Cache Packages + uses: actions/cache@v1 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven- + - name: Build and Run Tests + run: mvn $MAVEN_CLI_OPTS install diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..40fd410 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,37 @@ +--- +name: Releases + +# yamllint disable-line rule:truthy +on: + release: + types: + - published + +jobs: + release: + runs-on: ubuntu-latest + env: + MAVEN_CLI_OPTS: "-s .m2/settings.xml --batch-mode" + steps: + - uses: actions/checkout@v2 + - name: Set up Java 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Strip SNAPSHOT Version + run: | + mvn $MAVEN_CLI_OPTS \ + versions:set versions:update-child-modules versions:commit \ + -DnewVersion=${VERSION/refs\/tags\/} \ + -DgenerateBackupPoms=false + env: + VERSION: ${{ github.ref }} + - name: Publish GitHub Packages + run: | + mvn $MAVEN_CLI_OPTS \ + deploy \ + -D altDeploymentRepository=release::default::${MAVEN_RELEASE_REPO_URL} + env: + MAVEN_RELEASE_REPO_USER: ${{ github.actor }} + MAVEN_RELEASE_REPO_PASS: ${{ secrets.GITHUB_TOKEN }} + MAVEN_RELEASE_REPO_URL: https://maven.pkg.github.com/${{ github.repository }} diff --git a/.gitignore b/.gitignore index e420ee4..920216b 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ -target/* +.tox/ +*.retry +*.swp diff --git a/.m2/settings.xml b/.m2/settings.xml new file mode 100644 index 0000000..5aa109f --- /dev/null +++ b/.m2/settings.xml @@ -0,0 +1,11 @@ + + + + + release + ${env.MAVEN_RELEASE_REPO_USER} + ${env.MAVEN_RELEASE_REPO_PASS} + + +