-
Notifications
You must be signed in to change notification settings - Fork 5
67 lines (66 loc) · 2.5 KB
/
release.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
# Copyright 2019 celadari. All rights reserved. MIT license.
name: Publish documentation to project website and Package to Maven Central Repository
on:
release:
types: [created]
jobs:
publish-doc:
runs-on: ubuntu-20.04
steps:
- name: Install ansi2txt tool
run: |
sudo apt-get update
sudo apt-get install colorized-logs
- uses: actions/checkout@v2
with:
token: ${{ secrets.PAT_TOKEN }}
- name: Generate API Doc
run: sbt +doc
- name: Make API Doc directory outside repository
run: mkdir -p ../api_docs
- name: Move API Docs to outside directory
run: |
source .workflow-scripts/put_scala_docs_aside.sh ./target ../api_docs
cp .workflow-scripts/move_scala_docs.sh ../api_docs/
cp .workflow-scripts/update_json_api_versions.py ../api_docs/
echo "scala_versions=$scala_versions" >> $GITHUB_ENV
echo "api_version=$api_version" >> $GITHUB_ENV
- name: Git checkout on gh-pages
run: |
git fetch
git checkout gh-pages
- name: Move API Docs to website API Docs directory
run: |
cd ..
export scala_versions="${{ env.scala_versions }}"
export api_version="${{ env.api_version }}"
bash api_docs/move_scala_docs.sh ./api_docs "./${GITHUB_REPOSITORY#*/}/docs/_api" ./api_docs "./${GITHUB_REPOSITORY#*/}/docs/_data/api_versions.json"
- name: Git add and commit on gh-pages
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "[email protected]"
git add docs/_api/.
git add docs/_data/api_versions.json
git commit -m "[RELEASE] Update doc version from branch \"$GITHUB_REF\" commit \"$GITHUB_REF\""
git push
publish-package:
runs-on: ubuntu-latest
needs: [publish-doc]
steps:
- name: Install gpg secret key
run: |
cat <(echo -e "${{ secrets.SONATYPE_GPG_SECRET_KEY }}") | gpg --batch --import
gpg --list-secret-keys --keyid-format LONG
- uses: actions/checkout@v2
- name: Set up Java
uses: actions/setup-java@v2
with:
java-version: '11'
distribution: 'adopt'
- name: Publish package
run: |
sbt +publishSigned
sbt +sonatypeBundleRelease
env:
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}