diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml new file mode 100644 index 00000000..ebe2d4a1 --- /dev/null +++ b/.github/workflows/cd.yml @@ -0,0 +1,77 @@ +# 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: Java CD with Maven + +on: + push: + branches: [ develop, master ] + pull_request: + branches: [ develop, master ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Set up Maven + env: + GPG_KEY: ${{ secrets.MAVEN_KEY }} + run: | + export GPG_TTY=$(tty) + cp .mvn.settings.xml $HOME/.m2/settings.xml + echo "$GPG_KEY" >> codesigning.asc + gpg --batch --import codesigning.asc + shred --remove codesigning.asc + - name: Set up Terraform + run: | + curl -g https://releases.hashicorp.com/terraform/0.12.9/terraform_0.12.9_linux_amd64.zip -o /tmp/terraform.zip + sudo unzip /tmp/terraform.zip -d /usr/bin + - name: Build with Maven + env: + COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} + run: | + cd tf-build-tools + ./mvnw clean test coveralls:report -DrepoToken="$COVERALLS_REPO_TOKEN" + cd .. + - name: Deploy + id: deploy + env: + OSSRH_USERNAME: ${{ secrets.SONATYPE_USER }} + OSSRH_PASSWORD: ${{ secrets.SONATYPE_PW }} + GPG_KEY_PW: ${{ secrets.MAVEN_KEY_PW }} + GPG_KEY_ID: ${{ secrets.MAVEN_KEY_ID }} + run: | + cd tf-build-tools + + VERSION=$(./mvnw org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version -q -DforceStdout) + PROFILE="" + + # if [ "$BRANCH_NAME" == "develop" ] && ![ echo $VERSION | grep -q SNAPSHOT ]; then + if ![ echo $VERSION | grep -q SNAPSHOT ]; then + DOTS=$VERSION | sed -e 's/\(.\)/\n/g' | grep l | wc -l + + # Ensure that the build number is in the 4th [semver] position + if [ "$DOTS" < "3" ]; then + VERSION="${VERSION}.0" + fi + VERSION="${VERSION}-${GITHUB_RUN_NUMBER}" + echo "***** VERSION is $VERSION ******" + ./mvnw versions:set -DnewVersion="${VERSION}" + else + PROFILE="release" + fi + + # Stage for Maven Central Deployment + export GPG_TTY=$(tty) + ./mvnw deploy -DskipTests=true -P ${PROFILE} + + + + diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..1266f406 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,30 @@ +# 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: Java CI with Maven + +on: + pull_request: + branches: [ foo ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Setup Terraform + run: | + curl -g https://releases.hashicorp.com/terraform/0.12.9/terraform_0.12.9_linux_amd64.zip -o /tmp/terraform.zip + sudo unzip /tmp/terraform.zip -d /usr/bin + - name: Build with Maven + env: + COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} + run: | + cp .mvn.settings.xml $HOME/.m2/settings.xml + cd tf-build-tools && ./mvnw clean test coveralls:report -DrepoToken="$COVERALLS_REPO_TOKEN" diff --git a/.mvn.settings.xml b/.mvn.settings.xml index 6de7a9d3..d1a0d3ac 100644 --- a/.mvn.settings.xml +++ b/.mvn.settings.xml @@ -9,4 +9,17 @@ org.eluder.coveralls + + + release + + true + + + gpg + ${env.GPG_KEY_ID} + ${env.GPG_KEY_PW} + + + diff --git a/.travis.yml b/.travis.yml index 4bd338d0..e2b0723b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,33 +1,13 @@ language: java -env: - global: - - secure: STW9FkS69BRtMGlF+BGJEefaHi1UzguzkyQOZZxKZp93bJTzWafGLonwDW/Aky3BhlRwCfKrl9e0BuF+j1ACBv5gxowvO8RuwFzBNbpKOeTAtVEmqXrqfLtfN+w3tKj41Db08NxP9NNlxQst9FSlhJP0EM1EdetcMTYwMWvL2Q71UP2RD3vziorPON6W+hiXA1pstRHkYc3G5x7dmVvP6nMcUo/vPvbPi6QOn4SS2Pm/f9t5vAA1UYsXgfQDXG178wI9WMpiUo75hCHL2yzYnLszigWEzG2UDkAM35vJnLwI/fGhl4jysf8r85+bDusfkJ7TYQizRChLpfdOO67UwDTGAN28/KEvhSXT8TG6lMLu35xk3kRvN6mjcnYtxWYhaJjuXQ23vrdXfZvsoXbaW7DwPafqsG8nvhjMUXnXHmNUV+K4RIEqrnYmapxPTVAEmWluzyfCCEptpwpb0Xl2fc/KVy02o63a8rKaa2CaepZt6b7juFVTXeWYmaJ66NoHovXYtbGpiC2v1iDa8bmrdRkb1GzQ/PEcUTToGOeTOEkOZbvCMt2xS2B/cvgo3w2Z4C8moovY2dDjOP5F94fwBwbwodK/b5f8QBPwECqZIoQpqhvtMo99HOQJgpPhKLddUqhzw1rjPt07S2QDiHkwd4EePeZ6ZIcY61iGtMcwpes= - - secure: mesHrCi3fqaM538dEQJftOarOTEAMgo61uFx0RmOvg3nBVJphaLHoJWaYXfA5qtNhXTSYFwAeqIxAywRljEspRVwvhXvykRuGUzgk1w5MIL8OLflK34SU7m/eBPGVw6Ka4Uft8vnnZYzfl1qEY05EP9M20gciAujmfSnzSjfyIM9hZieDlsz4YkPexnuV9t7cFWEipg4icac6n0NFcZxzznnQ7Tyg+GyJA3HCVgB4jpfIPByJumpGBla1hFkfcWsgyL2uzQozcWUqLzW772PiPc6H75AAGSIDC63dwA3rmzCfBdj1POwn1mezRoJrxt0c3vr1uoSztZe5wquGEoUw1QRxOyEiYWy0z+TFWfb5G5D/H+7ICllL4+PXqI3Mf5uyujI3JNxeTbOa+lkydx79kL+ulOy2AyrY6IMmzRsyGmRxhpdoreQwHFKIsydqxEtBXHZ3oCcjR83hxLF9atbefWq8CNfvdLYsUUxwsUSmF+IBo5se/kJ7zwdb9yFWX2NzlJhchDmU97dXIzdn8PI4mFC0p/gmllJvr/cdjSBxLxgPVcH8fQ0kH6oMgNEXKvl1od/Qls95w0nP4W33zYxEk+DCKwdCXIQ8arEj4lamSEGyzii0zdn1gM/LExyu/SQ8ZOeWTEOLHuWYMNj7zuEVmaf1b1wwZf8a5E8hH4W6RA= sudo: false branches: only: - - develop - - /^release\/v.*$/ - - /^hotfix\/v.*$/ + - none cache: directories: - $HOME/.m2 jdk: - openjdk8 -before_install: - - curl -g https://releases.hashicorp.com/terraform/0.12.9/terraform_0.12.9_linux_amd64.zip -o /tmp/terraform.zip - - sudo unzip /tmp/terraform.zip -d /usr/bin script: - | - cd tf-build-tools - echo "*** Downloading the help plugin and getting the project version ***" - ./mvnw org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version - VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout) - - if [ $TRAVIS_PULL_REQUEST = "false" ] && echo $VERSION | grep -q SNAPSHOT; then - echo "*** Validating the build and deploying to Sonatype's SNAPSHOT repo ***" - cp ../.mvn.settings.xml $HOME/.m2/settings.xml && ./mvnw clean test coveralls:report deploy - else - echo "*** Validating the build ***" - ./mvnw clean test coveralls:report - fi + "***** Travis No More! *****" diff --git a/README.md b/README.md index db08712c..3e200f82 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,10 @@ -[tf-maven-plugin]:https://search.maven.org/artifact/com.deliveredtechnologies/tf-maven-plugin/0.11/maven-plugin -[tf-cmd-api]:https://search.maven.org/artifact/com.deliveredtechnologies/tf-cmd-api/0.11/jar +[tf-maven-plugin]:https://search.maven.org/artifact/com.deliveredtechnologies/tf-maven-plugin/0.11.1/maven-plugin +[tf-cmd-api]:https://search.maven.org/artifact/com.deliveredtechnologies/tf-cmd-api/0.11.1/jar [tf-s3-archetype]:https://search.maven.org/artifact/com.deliveredtechnologies/tf-s3-archetype/0.11/jar [tf-maven-plugin-snapshot]:https://oss.sonatype.org/content/repositories/snapshots/com/deliveredtechnologies/tf-maven-plugin/ [tf-cmd-api-snapshot]:https://oss.sonatype.org/content/repositories/snapshots/com/deliveredtechnologies/tf-cmd-api/ [tf-s3-archetype-snapshot]:https://oss.sonatype.org/content/repositories/snapshots/com/deliveredtechnologies/tf-s3-archetype/ -[maven-badge]:https://img.shields.io/badge/maven%20central-0.11-green.svg +[maven-badge]:https://img.shields.io/badge/maven%20central-0.11.1-green.svg [maven-snapshot-badge]:https://img.shields.io/badge/SNAPSHOT-0.12-green.svg ![terraform-maven](.docs/MavenTerraform.png) diff --git a/tf-build-tools/.coveralls.yml b/tf-build-tools/.coveralls.yml deleted file mode 100644 index a471ac11..00000000 --- a/tf-build-tools/.coveralls.yml +++ /dev/null @@ -1 +0,0 @@ -repo_token: OG8RAhndMR8qNlH8e1YUuN85ikl18mYU3 diff --git a/tf-build-tools/pom.xml b/tf-build-tools/pom.xml index 16dca804..8cf2b2b0 100644 --- a/tf-build-tools/pom.xml +++ b/tf-build-tools/pom.xml @@ -6,7 +6,7 @@ com.deliveredtechnologies tf-build-tools pom - 0.12-SNAPSHOT + 0.12 Terraform Build Tools: The parent POM project for Java and Terraform Tools tf-cmd-api @@ -136,6 +136,12 @@ sign + + + --pinentry-mode + loopback + + diff --git a/tf-build-tools/tf-cmd-api/pom.xml b/tf-build-tools/tf-cmd-api/pom.xml index 6d77714d..87e94073 100644 --- a/tf-build-tools/tf-cmd-api/pom.xml +++ b/tf-build-tools/tf-cmd-api/pom.xml @@ -5,7 +5,7 @@ tf-build-tools com.deliveredtechnologies - 0.12-SNAPSHOT + 0.12 4.0.0 tf-cmd-api diff --git a/tf-build-tools/tf-maven-plugin/pom.xml b/tf-build-tools/tf-maven-plugin/pom.xml index c9a21b93..5541f54e 100644 --- a/tf-build-tools/tf-maven-plugin/pom.xml +++ b/tf-build-tools/tf-maven-plugin/pom.xml @@ -4,7 +4,7 @@ com.deliveredtechnologies tf-build-tools - 0.12-SNAPSHOT + 0.12 tf-maven-plugin maven-plugin diff --git a/tf-build-tools/tf-s3-archetype/pom.xml b/tf-build-tools/tf-s3-archetype/pom.xml index c2be2b7f..9ec60495 100644 --- a/tf-build-tools/tf-s3-archetype/pom.xml +++ b/tf-build-tools/tf-s3-archetype/pom.xml @@ -5,7 +5,7 @@ 4.0.0 com.deliveredtechnologies - 0.12-SNAPSHOT + 0.12 tf-build-tools tf-s3-archetype diff --git a/tf-build-tools/tf-test/pom.xml b/tf-build-tools/tf-test/pom.xml index 4a84740b..09e9754b 100644 --- a/tf-build-tools/tf-test/pom.xml +++ b/tf-build-tools/tf-test/pom.xml @@ -5,7 +5,7 @@ tf-build-tools com.deliveredtechnologies - 0.12-SNAPSHOT + 0.12 4.0.0