@@ -9,16 +9,18 @@ name: Continuous Integration
99
1010on :
1111 pull_request :
12- branches : ['**']
12+ branches : ['**', '!update/**', '!pr/**' ]
1313 push :
14- branches : ['**']
14+ branches : ['**', '!update/**', '!pr/**' ]
1515 tags : [v*]
1616
1717env :
18- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
19- SONATYPE_USERNAME : ${{ secrets.SONATYPE_USERNAME }}
18+ PGP_PASSPHRASE : ${{ secrets.PGP_PASSPHRASE }}
2019 SONATYPE_PASSWORD : ${{ secrets.SONATYPE_PASSWORD }}
20+ SONATYPE_CREDENTIAL_HOST : ${{ secrets.SONATYPE_CREDENTIAL_HOST }}
21+ SONATYPE_USERNAME : ${{ secrets.SONATYPE_USERNAME }}
2122 PGP_SECRET : ${{ secrets.PGP_SECRET }}
23+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
2224
2325jobs :
2426 build :
2729 matrix :
2830 os : [ubuntu-latest]
2931 scala : [2.11.12, 2.12.15, 2.13.7, 3.1.3]
30- java : [temurin@11 ]
32+ java : [temurin@8 ]
3133 ci : [ciNode, ciFirefox, ciChrome, ciJSDOMNodeJS]
3234 runs-on : ${{ matrix.os }}
3335 steps :
@@ -36,12 +38,21 @@ jobs:
3638 with :
3739 fetch-depth : 0
3840
39- - name : Setup Java (temurin@11)
40- if : matrix.java == 'temurin@11'
41- uses : actions/setup-java@v2
41+ - name : Download Java (temurin@8)
42+ id : download-java-temurin-8
43+ if : matrix.java == 'temurin@8'
44+ uses : typelevel/download-java@v1
4245 with :
4346 distribution : temurin
44- java-version : 11
47+ java-version : 8
48+
49+ - name : Setup Java (temurin@8)
50+ if : matrix.java == 'temurin@8'
51+ uses : actions/setup-java@v2
52+ with :
53+ distribution : jdkfile
54+ java-version : 8
55+ jdkFile : ${{ steps.download-java-temurin-8.outputs.jdkFile }}
4556
4657 - name : Cache sbt
4758 uses : actions/cache@v2
@@ -67,32 +78,41 @@ jobs:
6778 run : npm install
6879
6980 - name : Check that workflows are up to date
70- run : sbt ++${{ matrix.scala }} githubWorkflowCheck
81+ run : sbt ' ++${{ matrix.scala }}' 'project /' githubWorkflowCheck
7182
72- - run : sbt ++${{ matrix.scala }} '${{ matrix.ci }}'
83+ - run : sbt ' ++${{ matrix.scala }}' '${{ matrix.ci }}'
7384
7485 publish :
7586 name : Publish Artifacts
7687 needs : [build]
77- if : github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v'))
88+ if : github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main' )
7889 strategy :
7990 matrix :
8091 os : [ubuntu-latest]
8192 scala : [3.1.3]
82- java : [temurin@11 ]
93+ java : [temurin@8 ]
8394 runs-on : ${{ matrix.os }}
8495 steps :
8596 - name : Checkout current branch (full)
8697 uses : actions/checkout@v2
8798 with :
8899 fetch-depth : 0
89100
90- - name : Setup Java (temurin@11)
91- if : matrix.java == 'temurin@11'
92- uses : actions/setup-java@v2
101+ - name : Download Java (temurin@8)
102+ id : download-java-temurin-8
103+ if : matrix.java == 'temurin@8'
104+ uses : typelevel/download-java@v1
93105 with :
94106 distribution : temurin
95- java-version : 11
107+ java-version : 8
108+
109+ - name : Setup Java (temurin@8)
110+ if : matrix.java == 'temurin@8'
111+ uses : actions/setup-java@v2
112+ with :
113+ distribution : jdkfile
114+ java-version : 8
115+ jdkFile : ${{ steps.download-java-temurin-8.outputs.jdkFile }}
96116
97117 - name : Cache sbt
98118 uses : actions/cache@v2
@@ -107,15 +127,15 @@ jobs:
107127 key : ${{ runner.os }}-sbt-cache-v2-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('project/build.properties') }}
108128
109129 - name : Import signing key
110- env :
111- PGP_PASSPHRASE : ${{ secrets.PGP_PASSPHRASE }}
130+ if : env.PGP_SECRET != '' && env.PGP_PASSPHRASE == ''
131+ run : echo $PGP_SECRET | base64 -di | gpg --import
132+
133+ - name : Import signing key and strip passphrase
134+ if : env.PGP_SECRET != '' && env.PGP_PASSPHRASE != ''
112135 run : |
113- echo "$PGP_SECRET" | base64 -d > /tmp/signing-key.gpg
136+ echo "$PGP_SECRET" | base64 -di > /tmp/signing-key.gpg
114137 echo "$PGP_PASSPHRASE" | gpg --pinentry-mode loopback --passphrase-fd 0 --import /tmp/signing-key.gpg
138+ (echo "$PGP_PASSPHRASE"; echo; echo) | gpg --command-fd 0 --pinentry-mode loopback --change-passphrase $(gpg --list-secret-keys --with-colons 2> /dev/null | grep '^sec:' | cut --delimiter ':' --fields 5 | tail -n 1)
115139
116- - name : Strip passphrase from signing key
117- env :
118- PGP_PASSPHRASE : ${{ secrets.PGP_PASSPHRASE }}
119- run : (echo "$PGP_PASSPHRASE"; echo; echo) | gpg --command-fd 0 --pinentry-mode loopback --change-passphrase 5EBC14B0F6C55083
120-
121- - run : sbt ++${{ matrix.scala }} release
140+ - name : Publish
141+ run : sbt '++${{ matrix.scala }}' tlRelease
0 commit comments