diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..ada308c --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,39 @@ +# This GitHub action can publish assets for release when a tag is created. +# Currently, it's setup to run on any tag that matches the pattern "v*" (ie. v0.1.0). + +name: release +on: + push: + tags: + - 'v*' + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v2.4.0 + + - name: Set up Apache Maven Central + uses: actions/setup-java@v1 + with: # running setup-java again overwrites the settings.xml + java-version: 1.8 + server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml + server-username: MAVEN_USERNAME + server-password: MAVEN_PASSWORD + gpg-private-key: ${{ secrets.PUBLISH_SIGNING_KEY }} # Value of the GPG private key to import + gpg-passphrase: GPG_PRIVATE_KEY_PASSPHRASE + + - name: Run tests + run: make test + shell: bash + + - name: Build and Publish package + run: make deploy + shell: bash + env: + MAVEN_USERNAME: ${{ secrets.PUBLISH_USERNAME }} + MAVEN_PASSWORD: ${{ secrets.PUBLISH_PASSWORD }} + GPG_PRIVATE_KEY_PASSPHRASE: ${{ secrets.PUBLISH_SIGNING_KEY_PASSPHRASE }} diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml new file mode 100644 index 0000000..9a3b708 --- /dev/null +++ b/.github/workflows/verify.yml @@ -0,0 +1,24 @@ +name: verify + +on: + pull_request: + branches: [ '*' ] + push: + branches: [ master ] + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2.4.0 + + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + - name: Run test + run: make test + shell: bash diff --git a/MAINTAINERS.md b/MAINTAINERS.md index 5a896d0..e136cb0 100644 --- a/MAINTAINERS.md +++ b/MAINTAINERS.md @@ -46,7 +46,7 @@ To release to Sonatype, make a `settings.xml` in `~/.m2` https://maven.apache.or The following information must be provided: * SONATYPE_USERNAME - oss.sonatype.org login for io.vinyldns -* SONATYPE_USERNAME - oss.sonatype.org password for io.vinyldns +* SONATYPE_PASSWORD - oss.sonatype.org password for io.vinyldns * GITHUB_USERNAME - Github username that your fork is published to * KEY_PASSPHRASE - passphrase for key F6D171DC24C6EB30FCAC1E85AEF7D1D58E3C1B9A diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..0e38dd8 --- /dev/null +++ b/Makefile @@ -0,0 +1,28 @@ +SHELL=bash + +# Check that the required version of make is being used +REQ_MAKE_VER:=3.82 +ifneq ($(REQ_MAKE_VER),$(firstword $(sort $(MAKE_VERSION) $(REQ_MAKE_VER)))) + $(error The version of MAKE $(REQ_MAKE_VER) or higher is required; you are running $(MAKE_VERSION)) +endif + +.ONESHELL: + +all: package test + +.PHONY: clean +clean: + mvn clean --file pom.xml + +.PHONY: test +test: clean + mvn test --file pom.xml + +.PHONY: package +package: clean + mvn package --file pom.xml + +.PHONY: deploy +deploy: package + mvn --batch-mode deploy --file pom.xml + diff --git a/pom.xml b/pom.xml index 59909d3..a9d1500 100644 --- a/pom.xml +++ b/pom.xml @@ -5,44 +5,25 @@ vinyldns-java 0.9.4-SNAPSHOT - - scm:git:ssh://git@github.com/${vinyldns-fork}/vinyldns-java.git - scm:git:ssh://git@github.com/${vinyldns-fork}/vinyldns-java.git - http://github.com/vinyldns/vinyldns-java - HEAD + + scm:git:git://github.com/vinyldns/vinyldns-java.git + scm:git:ssh://github.com:vinyldns/vinyldns-java.git + http://github.com/vinyldns/vinyldns-java vinyldns-java java client for https://vinyldns.io https://vinyldns.io - - - pauljamescleary - Paul Cleary - pauljamescleary@gmail.com - - - rebstar6 - Rebecca Star - rebstar6@gmail.com - - - nimaeskandary - Nima Eskandary - nimaesk1@gmail.com - - - mitruly - Michael Ly - michaeltrulyng@gmail.com - - - britneywright - Britney Wright - blw06g@gmail.com - - + + + VinylDNS Maintainers + vinyldns-core@googlegroups.com + VinylDNS + https://github.com/vinyldns/vinyldns-java + + + The Apache Software License, Version 2.0 @@ -327,7 +308,7 @@ org.apache.maven.plugins maven-gpg-plugin - 1.5 + 3.0.1 sign-artifacts @@ -335,6 +316,9 @@ sign + + F6D171DC24C6EB30FCAC1E85AEF7D1D58E3C1B9A +