generated from sVoxelDev/spigot-plugin-template
-
Notifications
You must be signed in to change notification settings - Fork 1
155 lines (130 loc) · 4.48 KB
/
gradle.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
name: Build
on: [push]
jobs:
build:
runs-on: ubuntu-18.04
# We want to run on external PRs, but not on our own internal PRs as they'll be run
# by the push to the branch.
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 17
distribution: temurin
- name: Build
run: ./gradlew build -x test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload build artifacts
uses: actions/upload-artifact@v3
with:
path: "**/build/libs"
test:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 17
distribution: temurin
- name: Test
run: ./gradlew test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Acceptance Tests
run: ./gradlew cucumber
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: deblockt/[email protected]
with:
access-token: ${{ secrets.GITHUB_TOKEN }}
path: "**/cucumber-report.json"
- name: Create Coverage
run: ./gradlew jacocoTestReport
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload CodeCov Report
uses: codecov/codecov-action@v3
with:
file: "**/build/reports/jacoco/**/*.xml"
- name: Publish Unit Test Results
uses: EnricoMi/[email protected]
if: always()
with:
files: "**/build/test-results/**/*.xml"
javadoc:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/next' || github.ref == 'refs/heads/release'
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 17
distribution: temurin
- name: Build Javadocs
run: ./gradlew javadoc
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy 🚀
uses: JamesIves/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
branch: gh-pages
folder: core/build/docs/javadoc
target-folder: javadocs
docs:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/next'
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0 # required by mike deploy
- uses: actions/setup-python@v3
with:
python-version: '3.x'
- name: Install pip dependencies
run: pip install -r requirements.txt
- name: Setup mkdocs deployment
run: |
git config --global user.name MkDocs Deploy
git config --global user.email [email protected]
- name: Deploy Documentation
run: mike deploy --prefix docs --push --update-aliases next latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
release:
needs: [ build, test ]
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/release' || github.ref == 'refs/heads/next'
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0 # required by mike deploy
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 17
distribution: temurin
- name: Set up Node.js v16.x
uses: actions/setup-node@v3
with:
node-version: "16.x"
- uses: actions/setup-python@v3
with:
python-version: '3.x'
- name: Install pip dependencies
run: pip install -r requirements.txt
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_URL: "https://api.github.com/"
ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.SONATYPE_USERNAME }}
ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.SONATYPE_PASSWORD }}
SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }}
run: npx --legacy-peer-deps -p @semantic-release/changelog -p @semantic-release/git -p @google/semantic-release-replace-plugin -p @semantic-release/exec -p semantic-release semantic-release