Skip to content

Commit 5bb11a9

Browse files
committed
Updating to GitHub actions and publishing to Maven Central
1 parent f2dd5b7 commit 5bb11a9

File tree

10 files changed

+185
-66
lines changed

10 files changed

+185
-66
lines changed
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Please provide a code example or even better a test to reproduce the bug.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
name: Other issue
3+
about: Generic issue
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
If you have a general question or seeking advice how to use something please create a new topic in our GitHub discussions forum: https://github.com/graphql-java/graphql-java/discussions. Thanks.

.github/workflows/master.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Master Build and Publish
2+
# For master push: Builds and publishes the development version to bintray/maven
3+
on:
4+
push:
5+
branches:
6+
- master
7+
jobs:
8+
buildAndPublish:
9+
runs-on: ubuntu-latest
10+
env:
11+
MAVEN_CENTRAL_USER: ${{ secrets.MAVEN_CENTRAL_USER }}
12+
MAVEN_CENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PASSWORD }}
13+
MAVEN_CENTRAL_PGP_KEY: ${{ secrets.MAVEN_CENTRAL_PGP_KEY }}
14+
15+
steps:
16+
- uses: actions/checkout@v1
17+
- uses: gradle/wrapper-validation-action@v1
18+
- name: Set up JDK 1.8
19+
uses: actions/setup-java@v1
20+
with:
21+
java-version: '8.0.282'
22+
- name: build test and publish
23+
run: ./gradlew assemble && ./gradlew check --info && ./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository -x check --info --stacktrace

.github/workflows/pull_request.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Pull Request Build
2+
# For pull requests: builds and test
3+
on:
4+
push:
5+
branches:
6+
- '!master'
7+
pull_request:
8+
branches:
9+
- master
10+
jobs:
11+
buildAndTest:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v1
15+
- uses: gradle/wrapper-validation-action@v1
16+
- name: Set up JDK 1.8
17+
uses: actions/setup-java@v1
18+
with:
19+
java-version: '8.0.282'
20+
- name: build and test
21+
run: ./gradlew assemble && ./gradlew check --info --stacktrace

.github/workflows/release.yml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Manual Release Build
2+
# Release builds
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
version:
7+
description: 'the version to be released'
8+
required: true
9+
10+
jobs:
11+
buildAndPublish:
12+
runs-on: ubuntu-latest
13+
env:
14+
MAVEN_CENTRAL_PGP_KEY: ${{ secrets.MAVEN_CENTRAL_PGP_KEY }}
15+
MAVEN_CENTRAL_USER: ${{ secrets.MAVEN_CENTRAL_USER }}
16+
MAVEN_CENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PASSWORD }}
17+
RELEASE_VERSION: ${{ github.event.inputs.version }}
18+
19+
steps:
20+
- uses: actions/checkout@v1
21+
- uses: gradle/wrapper-validation-action@v1
22+
- name: Set up JDK 1.8
23+
uses: actions/setup-java@v1
24+
with:
25+
java-version: '8.0.282'
26+
- name: build test and publish
27+
run: ./gradlew assemble && ./gradlew check --info && ./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository -x check --info --stacktrace

build.gradle

Lines changed: 32 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ import java.text.SimpleDateFormat
22

33

44
plugins {
5-
id "com.jfrog.bintray" version "1.8.5"
5+
id 'java'
6+
id 'java-library'
7+
id 'maven'
8+
id 'maven-publish'
9+
id 'signing'
10+
id "io.github.gradle-nexus.publish-plugin" version "1.0.0"
611
}
712

8-
apply plugin: 'java'
9-
apply plugin: 'groovy'
10-
apply plugin: 'maven-publish'
11-
apply plugin: 'com.jfrog.bintray'
12-
1313
def getDevelopmentVersion() {
1414
def output = new StringBuilder()
1515
def error = new StringBuilder()
@@ -25,16 +25,16 @@ def getDevelopmentVersion() {
2525

2626

2727
def releaseVersion = System.properties.RELEASE_VERSION
28-
println "Building version = " + releaseVersion
2928
version = releaseVersion ? releaseVersion : getDevelopmentVersion()
29+
println "Building version = " + version
3030
group = 'com.graphql-java'
3131

3232
sourceCompatibility = 1.8
3333
targetCompatibility = 1.8
3434

3535
repositories {
3636
mavenCentral()
37-
maven { url "http://dl.bintray.com/andimarek/graphql-java" }
37+
mavenLocal()
3838
}
3939

4040

@@ -66,6 +66,12 @@ artifacts {
6666
archives javadocJar
6767
}
6868

69+
test {
70+
testLogging {
71+
exceptionFormat = 'full'
72+
}
73+
}
74+
6975
publishing {
7076
publications {
7177
maven(MavenPublication) {
@@ -112,24 +118,24 @@ publishing {
112118
}
113119
}
114120

115-
bintray {
116-
user = System.getenv('BINTRAY_USER')
117-
key = System.getenv('BINTRAY_API_KEY')
118-
publications = ['maven']
119-
publish = true
120-
pkg {
121-
userOrg = 'graphql-java'
122-
repo = 'graphql-java'
123-
name = "graphql-java-extended-validation"
124-
desc = 'A library fo extended validation for graphql-java'
125-
licenses = ['MIT']
126-
vcsUrl = 'https://github.com/graphql-java/graphql-java-extended-validation.git'
127-
version {
128-
released = new Date()
129-
vcsTag = project.version
130-
gpg {
131-
sign = true
132-
}
121+
nexusPublishing {
122+
repositories {
123+
sonatype {
124+
username = System.env.MAVEN_CENTRAL_USER
125+
password = System.env.MAVEN_CENTRAL_PASSWORD
133126
}
134127
}
135128
}
129+
130+
signing {
131+
def signingKey = System.env.MAVEN_CENTRAL_PGP_KEY
132+
useInMemoryPgpKeys(signingKey, "")
133+
sign publishing.publications
134+
}
135+
136+
137+
// all publish tasks depend on the build task
138+
tasks.withType(PublishToMavenRepository) {
139+
dependsOn build
140+
}
141+

gradle/wrapper/gradle-wrapper.jar

2.96 KB
Binary file not shown.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-bin.zip
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists

gradlew

Lines changed: 33 additions & 20 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gradlew.bat

Lines changed: 24 additions & 19 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)