From 618c980ee7170cd181ae79afb7feb064bf82deee Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 13:31:09 -0500 Subject: [PATCH 01/15] Splitting jobs in workflow to test faster --- .gitea/workflows/node-ci.yaml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 86570f9..247204c 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -11,7 +11,7 @@ permissions: contents: read jobs: - test: + lint: runs-on: ubuntu-24.04 steps: - name: Gitea Checkout @@ -28,6 +28,21 @@ jobs: - name: Run linter run: npm run lint + + test: + runs-on: ubuntu-24.04 + steps: + - name: Gitea Checkout + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + + - name: Setup Node.js + uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 + with: + node-version: '22' + cache: 'npm' + + - name: Install dependencies + run: npm ci - name: Run tests run: npm test From 94712c6cdab792068e1a86e75dda2d585b8dcb09 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 13:42:35 -0500 Subject: [PATCH 02/15] test workflow --- .gitea/workflows/node-ci.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 247204c..f60b6cd 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -28,7 +28,7 @@ jobs: - name: Run linter run: npm run lint - + test: runs-on: ubuntu-24.04 steps: @@ -50,7 +50,7 @@ jobs: alert_on_failure: needs: test runs-on: ubuntu-24.04 - #if: ${{ needs.test.result == 'failure' }} + #if: ${{ needs.test.result == 'failure' }} ## steps: - name: Notify Google Chat if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps From f4e69cd79fd651f0b39bf27176752e7c920087d2 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 13:55:11 -0500 Subject: [PATCH 03/15] Rewrote Google Chat notification --- .gitea/workflows/node-ci.yaml | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index f60b6cd..507d156 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -47,8 +47,8 @@ jobs: - name: Run tests run: npm test - alert_on_failure: - needs: test + Is_Linting_Succeeded: + needs: lint runs-on: ubuntu-24.04 #if: ${{ needs.test.result == 'failure' }} ## steps: @@ -58,7 +58,19 @@ jobs: with: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} - title: Google Chat GitHub Action + title: Lint failed subtitle: ${{ job.status }} - createDefaultSection: false - collapsibleDefaultSection: false \ No newline at end of file + + Is_Test_Succeeded: + needs: lint + runs-on: ubuntu-24.04 + #if: ${{ needs.test.result == 'failure' }} ## + steps: + - name: Notify Google Chat + if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps + uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 + with: + webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' + jobStatus: ${{ job.status }} + title: Test failed + subtitle: ${{ job.status }} \ No newline at end of file From c24bd37b5cf98a74dcd86b3381d122b49dd3d54d Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 14:01:31 -0500 Subject: [PATCH 04/15] Rewrote Google Chat notification --- .gitea/workflows/node-ci.yaml | 44 +++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 507d156..beb9edb 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -29,6 +29,15 @@ jobs: - name: Run linter run: npm run lint + - name: Notify Google Chat + if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps + uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 + with: + webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' + jobStatus: ${{ job.status }} + title: Lint failed + subtitle: ${{ job.status }} + test: runs-on: ubuntu-24.04 steps: @@ -47,25 +56,6 @@ jobs: - name: Run tests run: npm test - Is_Linting_Succeeded: - needs: lint - runs-on: ubuntu-24.04 - #if: ${{ needs.test.result == 'failure' }} ## - steps: - - name: Notify Google Chat - if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps - uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 - with: - webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' - jobStatus: ${{ job.status }} - title: Lint failed - subtitle: ${{ job.status }} - - Is_Test_Succeeded: - needs: lint - runs-on: ubuntu-24.04 - #if: ${{ needs.test.result == 'failure' }} ## - steps: - name: Notify Google Chat if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 @@ -73,4 +63,18 @@ jobs: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Test failed - subtitle: ${{ job.status }} \ No newline at end of file + subtitle: ${{ job.status }} + + #Alert_On_Failed: + # needs: lint + # runs-on: ubuntu-24.04 + # #if: ${{ needs.test.result == 'failure' }} ## + # steps: + # - name: Notify Google Chat + # if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps + # uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 + # with: + # webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' + # jobStatus: ${{ job.status }} + # title: Lint failed + # subtitle: ${{ job.status }} \ No newline at end of file From 3e12cc6424d7ed640f6d288baa3b5a1a64682ee3 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 14:12:17 -0500 Subject: [PATCH 05/15] Rewrote Google Chat notification --- .gitea/workflows/node-ci.yaml | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index beb9edb..24f92aa 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -30,13 +30,14 @@ jobs: run: npm run lint - name: Notify Google Chat - if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps + if: ${{ failure() }} # Use always to ensure that the notification is also send on failure of former steps uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 with: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Lint failed subtitle: ${{ job.status }} + additionalSections: '[{"header": "Additional Section", "collapsible": true, "widgets": [{"decoratedText": {"startIcon": {"knownIcon": "STAR"},"text": "${{ github.event.pull_request.html_url }}"}}] }]' test: runs-on: ubuntu-24.04 @@ -57,24 +58,10 @@ jobs: run: npm test - name: Notify Google Chat - if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps + if: ${{ failure() }} # Use always to ensure that the notification is also send on failure of former steps uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 with: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Test failed - subtitle: ${{ job.status }} - - #Alert_On_Failed: - # needs: lint - # runs-on: ubuntu-24.04 - # #if: ${{ needs.test.result == 'failure' }} ## - # steps: - # - name: Notify Google Chat - # if: ${{ always() }} # Use always to ensure that the notification is also send on failure of former steps - # uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 - # with: - # webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' - # jobStatus: ${{ job.status }} - # title: Lint failed - # subtitle: ${{ job.status }} \ No newline at end of file + subtitle: ${{ job.status }} \ No newline at end of file From 5a69febe60a0b840e419eedf0a4701c8fbc673a5 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 14:19:08 -0500 Subject: [PATCH 06/15] Rewrote Google Chat notification --- .gitea/workflows/node-ci.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 24f92aa..4bb31ba 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -36,8 +36,7 @@ jobs: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Lint failed - subtitle: ${{ job.status }} - additionalSections: '[{"header": "Additional Section", "collapsible": true, "widgets": [{"decoratedText": {"startIcon": {"knownIcon": "STAR"},"text": "${{ github.event.pull_request.html_url }}"}}] }]' + subtitle: ${{ github.job }} test: runs-on: ubuntu-24.04 From c50adb820dfc6028a367bb290967c08fb7f11c3d Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 14:20:56 -0500 Subject: [PATCH 07/15] Rewrote Google Chat notification --- .gitea/workflows/node-ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 4bb31ba..05ee4b5 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -36,7 +36,7 @@ jobs: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Lint failed - subtitle: ${{ github.job }} + subtitle: ${{ github.event.pull_request.html_url }} test: runs-on: ubuntu-24.04 From 3bf6b071da3b63ee0e4dc43710d3fdab205b43ad Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 14:23:39 -0500 Subject: [PATCH 08/15] Rewrote Google Chat notification --- .gitea/workflows/node-ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 05ee4b5..0736c3e 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -36,7 +36,7 @@ jobs: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Lint failed - subtitle: ${{ github.event.pull_request.html_url }} + subtitle: ${{ github.repository }} test: runs-on: ubuntu-24.04 From 2148f218e501d8026699bf5d47a181fada745991 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 14:26:29 -0500 Subject: [PATCH 09/15] Rewrote Google Chat notification --- .gitea/workflows/node-ci.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 0736c3e..e880086 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -36,7 +36,6 @@ jobs: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Lint failed - subtitle: ${{ github.repository }} test: runs-on: ubuntu-24.04 @@ -62,5 +61,4 @@ jobs: with: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} - title: Test failed - subtitle: ${{ job.status }} \ No newline at end of file + title: Test failed \ No newline at end of file From 7e3676bae00e1cc19ff717dbcd7d7ae3c9715b11 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 14:29:58 -0500 Subject: [PATCH 10/15] Move workflow to prod --- .gitea/workflows/node-ci.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index e880086..ee66728 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -4,9 +4,16 @@ name: Node-CI on: push: branches: [main] + paths-ignore: + - '**.md' + - 'docs/**' pull_request: branches: [main] +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + permissions: contents: read From d0b3bd80c2ca7cf9a71c58dd5923a12bd1e8a005 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 15:16:39 -0500 Subject: [PATCH 11/15] Added docker image building --- .gitea/workflows/node-ci.yaml | 57 ++++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index ee66728..26e868e 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -68,4 +68,59 @@ jobs: with: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} - title: Test failed \ No newline at end of file + title: Test failed + + build: + runs-on: ubuntu-24.04 + steps: + - name: Gitea Checkout + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + + - name: Setup Node.js + uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 + with: + node-version: '22' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Run build + run: npm run build + + # Partage du build via artifact + - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + with: + name: spa + path: dist/spa/ + retention-days: 1 + #Partage du dossier src + - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 + with: + name: src + path: src/ + retention-days: 1 + + - name: Notify Google Chat + if: ${{ failure() }} # Use always to ensure that the notification is also send on failure of former steps + uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 + with: + webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' + jobStatus: ${{ job.status }} + title: Test failed + + deploy: + needs: [lint, test, build] + runs-on: ubuntu-24.04 + if: github.ref == 'refs/heads/main' + permissions: + contents: read + id-token: write + steps: + - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + with: + name: spa + - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 + with: + name: src + - run: docker build -t targo_frontend . \ No newline at end of file From 003be92abadfa5b03d340472d18149ece25d8bd1 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 15:19:41 -0500 Subject: [PATCH 12/15] Added docker image building --- .gitea/workflows/node-ci.yaml | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 26e868e..0025baf 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -88,26 +88,13 @@ jobs: - name: Run build run: npm run build - # Partage du build via artifact - - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 - with: - name: spa - path: dist/spa/ - retention-days: 1 - #Partage du dossier src - - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 - with: - name: src - path: src/ - retention-days: 1 - - name: Notify Google Chat if: ${{ failure() }} # Use always to ensure that the notification is also send on failure of former steps uses: SimonScholz/google-chat-action@3b3519e5102dba8aa5046fd711c4b553586409bb # v1.1.0 with: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} - title: Test failed + title: Build failed deploy: needs: [lint, test, build] @@ -117,10 +104,4 @@ jobs: contents: read id-token: write steps: - - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 - with: - name: spa - - uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0 - with: - name: src - run: docker build -t targo_frontend . \ No newline at end of file From 0e5982ec622be42ed824b3b3ffd41f8b7d0175b0 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 15:25:15 -0500 Subject: [PATCH 13/15] Added docker image building --- .gitea/workflows/node-ci.yaml | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 0025baf..bddace7 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -95,13 +95,17 @@ jobs: webhookUrl: '${{ secrets.GOOGLE_CHAT_WEBHOOK }}' jobStatus: ${{ job.status }} title: Build failed + + - name: deploy + if: ${{ success() }} + run: docker build -t targo_frontend . - deploy: - needs: [lint, test, build] - runs-on: ubuntu-24.04 - if: github.ref == 'refs/heads/main' - permissions: - contents: read - id-token: write - steps: - - run: docker build -t targo_frontend . \ No newline at end of file + #deploy: + # needs: [lint, test, build] + # runs-on: ubuntu-24.04 + # if: github.ref == 'refs/heads/main' + # permissions: + # contents: read + # id-token: write + # steps: + # - run: docker build -t targo_frontend . \ No newline at end of file From 319d7b2471f33bb6a55fb7769ac22caf52beb4bb Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 15:29:29 -0500 Subject: [PATCH 14/15] Added docker image building --- .gitea/workflows/node-ci.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index bddace7..836ab5d 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -11,7 +11,7 @@ on: branches: [main] concurrency: - group: ${{ github.workflow }}-${{ github.ref }} + group: ${{ gitea.workflow }}-${{ gitea.ref }} cancel-in-progress: true permissions: @@ -96,9 +96,9 @@ jobs: jobStatus: ${{ job.status }} title: Build failed - - name: deploy - if: ${{ success() }} - run: docker build -t targo_frontend . + #- name: deploy + # if: ${{ success() }} + # run: docker build -t targo_frontend . #deploy: # needs: [lint, test, build] From 6d16dc099a215a9aae431587123aa7a367882e33 Mon Sep 17 00:00:00 2001 From: Frederick Pruneau Date: Thu, 5 Feb 2026 15:30:16 -0500 Subject: [PATCH 15/15] Added docker image building --- .gitea/workflows/node-ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/node-ci.yaml b/.gitea/workflows/node-ci.yaml index 836ab5d..c49964f 100644 --- a/.gitea/workflows/node-ci.yaml +++ b/.gitea/workflows/node-ci.yaml @@ -11,7 +11,7 @@ on: branches: [main] concurrency: - group: ${{ gitea.workflow }}-${{ gitea.ref }} + group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true permissions: