1+ # This file was automatically generated by sbt-github-actions using the
2+ # githubWorkflowGenerate task. You should add and commit this file to
3+ # your git repository. It goes without saying that you shouldn't edit
4+ # this file by hand! Instead, if you wish to make changes, you should
5+ # change your sbt build configuration to revise the workflow description
6+ # to meet your needs, then regenerate this file.
7+
8+ name : Continuous Integration
9+
10+ on :
11+ pull_request :
12+ branches : ['*']
13+ push :
14+ branches : ['*']
15+ tags : [v*]
16+
17+ env :
18+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
19+
20+ jobs :
21+ build :
22+ name : Build and Test
23+ strategy :
24+ matrix :
25+ os : [ubuntu-latest]
26+ scala : [2.12.12]
27+ 28+ runs-on : ${{ matrix.os }}
29+ steps :
30+ - name : Checkout current branch (full)
31+ uses : actions/checkout@v2
32+ with :
33+ fetch-depth : 0
34+
35+ - name : Setup Java and Scala
36+ uses : olafurpg/setup-scala@v10
37+ with :
38+ java-version : ${{ matrix.java }}
39+
40+ - name : Cache sbt
41+ uses : actions/cache@v2
42+ with :
43+ path : |
44+ ~/.sbt
45+ ~/.ivy2/cache
46+ ~/.coursier/cache/v1
47+ ~/.cache/coursier/v1
48+ ~/AppData/Local/Coursier/Cache/v1
49+ ~/Library/Caches/Coursier/v1
50+ key : ${{ runner.os }}-sbt-cache-v2-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('project/build.properties') }}
51+
52+ - name : Check that workflows are up to date
53+ run : sbt ++${{ matrix.scala }} githubWorkflowCheck
54+
55+ - run : sbt ++${{ matrix.scala }} test scripted
56+
57+ - name : Compress target directories
58+ run : tar cf targets.tar target project/target
59+
60+ - name : Upload target directories
61+ uses : actions/upload-artifact@v2
62+ with :
63+ name : target-${{ matrix.os }}-${{ matrix.scala }}-${{ matrix.java }}
64+ path : targets.tar
65+
66+ publish :
67+ name : Publish Artifacts
68+ needs : [build]
69+ if : github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v'))
70+ strategy :
71+ matrix :
72+ os : [ubuntu-latest]
73+ scala : [2.12.12]
74+ 75+ runs-on : ${{ matrix.os }}
76+ steps :
77+ - name : Checkout current branch (full)
78+ uses : actions/checkout@v2
79+ with :
80+ fetch-depth : 0
81+
82+ - name : Setup Java and Scala
83+ uses : olafurpg/setup-scala@v10
84+ with :
85+ java-version : ${{ matrix.java }}
86+
87+ - name : Cache sbt
88+ uses : actions/cache@v2
89+ with :
90+ path : |
91+ ~/.sbt
92+ ~/.ivy2/cache
93+ ~/.coursier/cache/v1
94+ ~/.cache/coursier/v1
95+ ~/AppData/Local/Coursier/Cache/v1
96+ ~/Library/Caches/Coursier/v1
97+ key : ${{ runner.os }}-sbt-cache-v2-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('project/build.properties') }}
98+
99+ - name : Download target directories (2.12.12)
100+ uses : actions/download-artifact@v2
101+ with :
102+ name : target-${{ matrix.os }}-2.12.12-${{ matrix.java }}
103+
104+ - name : Inflate target directories (2.12.12)
105+ run : |
106+ tar xf targets.tar
107+ rm targets.tar
108+
109+ - env :
110+ PGP_PASSPHRASE : ${{ secrets.PGP_PASSPHRASE }}
111+ PGP_SECRET : ${{ secrets.PGP_SECRET }}
112+ SONATYPE_PASSWORD : ${{ secrets.SONATYPE_PASSWORD }}
113+ SONATYPE_USERNAME : ${{ secrets.SONATYPE_USERNAME }}
114+ run : sbt ++${{ matrix.scala }} ci-release
0 commit comments