Skip to content

Commit

Permalink
Adds Github CI.
Browse files Browse the repository at this point in the history
  • Loading branch information
hzafar committed May 9, 2020
1 parent 59175fc commit a0827ee
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 3 deletions.
63 changes: 63 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Kotlin CI/CD

on: [push]

jobs:
build:
name: Build and Test
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11.0.4

- name: Build
env:
ORG_GRADLE_PROJECT_NEXUSUSERNAME: "${{ secrets.nexusUsername }}"
ORG_GRADLE_PROJECT_NEXUSPASSWORD: "${{ secrets.nexusPassword }}"
ORG_GRADLE_PROJECT_SIGNINGKEYID: "${{ secrets.signingKeyId }}"
ORG_GRADLE_PROJECT_SIGNINGPASSWORD: "${{ secrets.signingPassword }}"
run: ./gradlew clean && ./gradlew build

- name: Test
env:
ORG_GRADLE_PROJECT_NEXUSUSERNAME: "${{ secrets.nexusUsername }}"
ORG_GRADLE_PROJECT_NEXUSPASSWORD: "${{ secrets.nexusPassword }}"
ORG_GRADLE_PROJECT_SIGNINGKEYID: "${{ secrets.signingKeyId }}"
ORG_GRADLE_PROJECT_SIGNINGPASSWORD: "${{ secrets.signingPassword }}"
run: ./gradlew test

publish:
name: Publish to Maven Central
if: contains(github.ref, 'release/')
needs: build
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11.0.4

- name: Install GPG key
run: |
cat <(echo -e "${{ secrets.signingKey }}") | gpg --batch --import
gpg --list-secret-keys --keyid-format LONG
- name: Install gpg2
run: sudo apt-get install gnupg2 -y

- name: Publish artifact
env:
ORG_GRADLE_PROJECT_NEXUSUSERNAME: "${{ secrets.nexusUsername }}"
ORG_GRADLE_PROJECT_NEXUSPASSWORD: "${{ secrets.nexusPassword }}"
ORG_GRADLE_PROJECT_SIGNINGKEYID: "${{ secrets.signingKeyId }}"
ORG_GRADLE_PROJECT_SIGNINGPASSWORD: "${{ secrets.signingPassword }}"
GPG_TTY: $(tty)
run: ./gradlew publish
10 changes: 8 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -67,15 +67,21 @@ publishing {
repositories {
maven {
credentials {
username project.nexusUsername
password project.nexusPassword
username project.NEXUSUSERNAME
password project.NEXUSPASSWORD
}
url = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/'
}
}
}

allprojects {
ext."signing.gnupg.keyName" = project.SIGNINGKEYID
ext."signing.gnupg.passphrase" = project.SIGNINGPASSWORD
}

signing {
useGpgCmd()
sign publishing.publications.mavenJava
}

Expand Down
3 changes: 2 additions & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
kotlin.code.style=official
kotlin.code.style=official
signing.gnupg.executable=gpg2

0 comments on commit a0827ee

Please sign in to comment.