44 push :
55 branches : ['**']
66 tags : [v*]
7+ permissions :
8+ contents : write # release-drafter, auto-merge requirement
9+ pull-requests : write # labeler, auto-merge requirement
710jobs :
811 ci-2-12 :
912 # run on 1) push, 2) external PRs, 3) softwaremill-ci PRs
2124 uses : actions/checkout@v2
2225
2326 - name : Set up SBT
24- uses : sbt/setup-sbt@v1
27+ uses : sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
2528
2629 - name : Set up JDK
2730 uses : actions/setup-java@v4
6366 uses : actions/checkout@v2
6467
6568 - name : Set up SBT
66- uses : sbt/setup-sbt@v1
69+ uses : sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
6770
6871 - name : Set up JDK
6972 uses : actions/setup-java@v4
@@ -105,7 +108,7 @@ jobs:
105108 uses : actions/checkout@v2
106109
107110 - name : Set up SBT
108- uses : sbt/setup-sbt@v1
111+ uses : sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
109112
110113 - name : Set up JDK
111114 uses : actions/setup-java@v4
@@ -147,7 +150,7 @@ jobs:
147150 uses : actions/checkout@v2
148151
149152 - name : Set up SBT
150- uses : sbt/setup-sbt@v1
153+ uses : sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
151154
152155 - name : Set up JDK
153156 uses : actions/setup-java@v4
@@ -216,7 +219,7 @@ jobs:
216219 uses : actions/checkout@v2
217220
218221 - name : Set up SBT
219- uses : sbt/setup-sbt@v1
222+ uses : sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
220223
221224 - name : Set up JDK
222225 uses : actions/setup-java@v4
@@ -256,7 +259,7 @@ jobs:
256259 uses : actions/checkout@v2
257260
258261 - name : Set up SBT
259- uses : sbt/setup-sbt@v1
262+ uses : sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
260263
261264 - name : Set up JDK
262265 uses : actions/setup-java@v4
@@ -300,7 +303,7 @@ jobs:
300303
301304 - name : Publish release notes
302305 id : create_release
303- uses : release-drafter/release-drafter@v5
306+ uses : release-drafter/release-drafter@b1476f6e6eb133afa41ed8589daba6dc69b4d3f5 # v6, specifically v6.1.0
304307 with :
305308 config-name : release-drafter.yml
306309 publish : true
@@ -329,7 +332,7 @@ jobs:
329332 uses : actions/checkout@v2
330333
331334 - name : Set up SBT
332- uses : sbt/setup-sbt@v1
335+ uses : sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
333336
334337 - name : Set up JDK
335338 uses : actions/setup-java@v4
@@ -351,7 +354,7 @@ jobs:
351354 key : ${{ runner.os }}-sbt-release-${{ hashFiles('**/build.sbt') }}
352355
353356 - name : Login to DockerHub
354- uses : docker/login-action@v1
357+ uses : docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3, specifically v3.6.0
355358 with :
356359 username : ${{ secrets.DOCKERHUB_USERNAME }}
357360 password : ${{ secrets.DOCKERHUB_TOKEN }}
@@ -362,40 +365,15 @@ jobs:
362365 - name : Publish JVM native docker image
363366 run : sbt "project nativeServer; assembly; Docker / publish"
364367
365- # `automerge` label is attached iff there is exactly one file changed by steward and this file belongs to a
366- # whitelist specified by `labeler.yml`
367368 label :
368- name : Attach automerge label
369369 # only for PRs by softwaremill-ci
370370 if : github.event.pull_request.user.login == 'softwaremill-ci'
371- runs-on : ubuntu-24.04
372- steps :
373- - uses : actions/checkout@v3
374- with :
375- fetch-depth : 2
376- # count number of files changed
377- - name : Count number of files changed
378- id : count-changed-files
379- run : |
380- N=$(git diff --name-only -r HEAD^1 HEAD | wc -w)
381- echo "changed_files_num=$N" >> $GITHUB_OUTPUT
382- - name : Launch labeler
383- # skip if more than one file changed
384- if : steps.count-changed-files.outputs.changed_files_num == 1
385- uses : srvaroa/labeler@master
386- env :
387- GITHUB_TOKEN : " ${{ secrets.GITHUB_TOKEN }}"
371+ uses : softwaremill/github-actions-workflows/.github/workflows/label.yml@main
372+ secrets : inherit
388373
389374 auto-merge :
390- name : Auto merge
391375 # only for PRs by softwaremill-ci
392376 if : github.event.pull_request.user.login == 'softwaremill-ci'
393377 needs : [ci-2-12, ci-2-13, ci-3, ci-docker, ci-native-image-agent-config-verification, label]
394- runs-on : ubuntu-24.04
395- steps :
396- - id : automerge
397- name : automerge
398- uses :
" pascalgn/[email protected] " 399- env :
400- GITHUB_TOKEN : " ${{ secrets.GITHUB_TOKEN }}"
401- MERGE_METHOD : " squash"
378+ uses : softwaremill/github-actions-workflows/.github/workflows/auto-merge.yml@main
379+ secrets : inherit
0 commit comments