1212 tests :
1313 name : Unit Tests
1414 runs-on : ubuntu-latest
15+ environment : develop
1516 if : github.repository != 'sebbo2002/js-template' && (contains(toJson(github.event.commits.*.message), '[skip ci]') == false || github.ref == 'refs/heads/main')
1617 strategy :
1718 matrix :
@@ -28,10 +29,15 @@ jobs:
2829 run : npm ci
2930 - name : ⏳ Run tests
3031 run : npm run test
32+ env :
33+ GITLAB_URL : ${{ secrets.GITLAB_URL }}
34+ GITLAB_TOKEN : ${{ secrets.GITLAB_TOKEN }}
35+ GITLAB_TEST_PROJECT : ${{ secrets.GITLAB_TEST_PROJECT }}
3136
3237 coverage :
3338 name : Code Coverage / Lint
3439 runs-on : ubuntu-latest
40+ environment : develop
3541 if : github.repository != 'sebbo2002/js-template' && (contains(toJson(github.event.commits.*.message), '[skip ci]') == false || github.ref == 'refs/heads/main')
3642 steps :
3743 - name : ☁️ Checkout Project
4753 run : npm run lint
4854 - name : ⚙️ Build project
4955 run : npm run build-all
56+ env :
57+ GITLAB_URL : ${{ secrets.GITLAB_URL }}
58+ GITLAB_TOKEN : ${{ secrets.GITLAB_TOKEN }}
59+ GITLAB_TEST_PROJECT : ${{ secrets.GITLAB_TEST_PROJECT }}
5060
5161 license-checker :
5262 name : License Checker
@@ -67,24 +77,25 @@ jobs:
6777 docker-image :
6878 name : Build Docker Image
6979 runs-on : ubuntu-latest
80+ environment : develop
7081 env :
7182 PUSH_TO_DOCKERHUB : ${{ (github.repository != 'sebbo2002/js-template') && (secrets.DOCKERHUB_TOKEN != null) }}
7283 steps :
7384 - name : ☁️ Checkout
74- uses : actions/checkout@v3
85+ uses : actions/checkout@v4
7586 - name : 🔧 Set up QEMU
76- uses : docker/setup-qemu-action@v2
87+ uses : docker/setup-qemu-action@v3
7788 - name : 🔧 Set up Buildx
7889 id : buildx
7990 uses : docker/setup-buildx-action@master
8091 - name : 🔐 Login to GitHub Container Registry
81- uses : docker/login-action@v2
92+ uses : docker/login-action@v3
8293 with :
8394 registry : ghcr.io
8495 username : ${{ github.repository_owner }}
8596 password : ${{ secrets.GITHUB_TOKEN }}
8697 - name : 🔐 Login to DockerHub
87- uses : docker/login-action@v2
98+ uses : docker/login-action@v3
8899 if : ${{ env.PUSH_TO_DOCKERHUB == 'true' }}
89100 with :
90101 username : ${{ github.repository_owner }}
@@ -101,7 +112,7 @@ jobs:
101112 - name : ⚙️ Build project
102113 run : npm run build
103114 - name : 🪄 Build and push
104- uses : docker/build-push-action@v5
115+ uses : docker/build-push-action@v6
105116 continue-on-error : true
106117 id : docker-build-1
107118 timeout-minutes : 30
@@ -125,7 +136,7 @@ jobs:
125136 ghcr.io/${{ github.repository }}:cache-${{ hashFiles('package*.json') }}
126137 ghcr.io/${{ github.repository }}:next
127138 - name : 🪄 Build and push (second try)
128- uses : docker/build-push-action@v5
139+ uses : docker/build-push-action@v6
129140 continue-on-error : true
130141 if : steps.docker-build-1.outcome=='failure'
131142 id : docker-build-2
@@ -150,7 +161,7 @@ jobs:
150161 ghcr.io/${{ github.repository }}:cache-${{ hashFiles('package*.json') }}
151162 ghcr.io/${{ github.repository }}:next
152163 - name : 🪄 Build and push (third try)
153- uses : docker/build-push-action@v5
164+ uses : docker/build-push-action@v6
154165 if : steps.docker-build-2.outcome=='failure'
155166 continue-on-error : true
156167 id : docker-build-3
@@ -194,7 +205,7 @@ jobs:
194205 - name : 🔄 Push container to DockerHub
195206 id : docker-build-dh
196207 if : ${{ env.PUSH_TO_DOCKERHUB == 'true' }}
197- uses : docker/build-push-action@v5
208+ uses : docker/build-push-action@v6
198209 with :
199210 context : .
200211 github-token : ${{ secrets.GITHUB_TOKEN }}
@@ -214,16 +225,21 @@ jobs:
214225 ghcr.io/${{ github.repository }}:cache-${{ hashFiles('package*.json') }}
215226 cache-to : type=inline
216227 - name : 🏁 Boot-up Check
217- if : github.repository != 'sebbo2002/js-template'
228+ if : github.repository != 'sebbo2002/js-template' && env.GITLAB_URL && env.GITLAB_TOKEN
218229 run : |
219- docker run --name "app" -d $IMAGE
230+ docker run --name "app" -d \
231+ -e "GITLAB_URL=$GITLAB_URL" \
232+ -e "GITLAB_TOKEN=$GITLAB_TOKEN" \
233+ $IMAGE
220234 sleep 5
221235 docker logs app
222236 docker exec app echo "Ok."
223237 docker stop app
224238 docker rm app
225239 env :
226240 IMAGE : ghcr.io/${{ github.repository }}:${{ github.sha }}
241+ GITLAB_URL : ${{ secrets.GITLAB_URL }}
242+ GITLAB_TOKEN : ${{ secrets.GITLAB_TOKEN }}
227243 outputs :
228244 digest-gh : ${{ steps.docker-build.outputs.digest }}
229245 digest-dh : ${{ steps.docker-build-dh.outputs.digest }}
@@ -246,6 +262,7 @@ jobs:
246262 - tests
247263 - license-checker
248264 - docker-image
265+ environment : develop
249266 if : ${{ github.repository != 'sebbo2002/js-template' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/develop') }}
250267 steps :
251268 - name : ☁️ Checkout Project
@@ -279,13 +296,13 @@ jobs:
279296 - name : 📂 Create docs folder
280297 run : mkdir ./docs
281298 - name : 🔐 Login to GitHub Container Registry
282- uses : docker/login-action@v2
299+ uses : docker/login-action@v3
283300 with :
284301 registry : ghcr.io
285302 username : ${{ github.repository_owner }}
286303 password : ${{ secrets.GITHUB_TOKEN }}
287304 - name : 🔐 Login to DockerHub
288- uses : docker/login-action@v2
305+ uses : docker/login-action@v3
289306 with :
290307 username : ${{ github.repository_owner }}
291308 password : ${{ secrets.DOCKERHUB_TOKEN }}
@@ -299,13 +316,9 @@ jobs:
299316 npm_config_access : public
300317 DOCKER_LOCAL_IMAGE_GH : ghcr.io/${{ github.repository }}:${{ github.sha }}
301318 DOCKER_LOCAL_IMAGE_DH : ${{ github.repository }}:${{ github.sha }}
302- - name : 🌎 Deploy GitHub Pages
303- uses : peaceiris/actions-gh-pages@v4
304- if : github.ref == 'refs/heads/main' || github.ref == 'refs/heads/develop'
305- with :
306- github_token : ${{ secrets.GITHUB_TOKEN }}
307- publish_dir : ./docs
308- destination_dir : ./${GITHUB_REF#refs/heads/}
319+ GITLAB_URL : ${{ secrets.GITLAB_URL }}
320+ GITLAB_TOKEN : ${{ secrets.GITLAB_TOKEN }}
321+ GITLAB_TEST_PROJECT : ${{ secrets.GITLAB_TEST_PROJECT }}
309322 - name : 🔃 Merge main back into develop
310323 if : ${{ github.ref == 'refs/heads/main' }}
311324 uses : everlytic/branch-merge@1.1.5
0 commit comments