@futdevpro/dynamo-eslint 1.15.16 β 1.15.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.dynamo/pipeline.cicd.config.json +23 -1
- package/.github/workflows/main.yml +429 -423
- package/build/configs/ngx.js +4 -1
- package/build/configs/ngx.js.map +1 -1
- package/package.json +1 -1
- package/src/configs/ngx.ts +4 -1
|
@@ -20,6 +20,24 @@
|
|
|
20
20
|
"includeStepLogs": false
|
|
21
21
|
},
|
|
22
22
|
"steps": [
|
|
23
|
+
{
|
|
24
|
+
"_comment": "FR-171 (2026-06-13) β auto-introspect ALL steps' condition.envSet + command ${VAR} refs. Reports PRESENT/MISSING env-vars + which downstream steps will silent-skip. Warning-only by default; fail-fast on the `requireSet` list. Goal: never again silent-skip discord/hot-update without surfacing the missing env at step #1.",
|
|
25
|
+
"label": "validate-secrets",
|
|
26
|
+
"type": "validate-secrets",
|
|
27
|
+
"fatal": false,
|
|
28
|
+
"discord": {
|
|
29
|
+
"emoji": "π",
|
|
30
|
+
"name": "Secrets Check",
|
|
31
|
+
"group": "preflight",
|
|
32
|
+
"groupName": "Pre-flight Check",
|
|
33
|
+
"groupEmoji": "π"
|
|
34
|
+
},
|
|
35
|
+
"settings": {
|
|
36
|
+
"requireSet": [
|
|
37
|
+
"NPM_TOKEN"
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
},
|
|
23
41
|
{
|
|
24
42
|
"label": "discord-start",
|
|
25
43
|
"command": "dc ci-dn-s '{\"appName\":\"Dynamo-ESLint\",\"appEmoji\":\"π§\",\"commitMessage\":\"$COMMIT_MESSAGE\",\"branchName\":\"$GITHUB_REF_NAME\",\"author\":\"$GITHUB_ACTOR\",\"runNumber\":\"$GITHUB_RUN_NUMBER\",\"runId\":\"$GITHUB_RUN_ID\",\"repository\":\"$GITHUB_REPOSITORY\",\"eventName\":\"$GITHUB_EVENT_NAME\",\"eventDateTime\":\"$EVENT_DATETIME\"}'",
|
|
@@ -87,7 +105,7 @@
|
|
|
87
105
|
},
|
|
88
106
|
{
|
|
89
107
|
"label": "build",
|
|
90
|
-
"command": "npx tsc",
|
|
108
|
+
"command": "rimraf ./build && npx tsc",
|
|
91
109
|
"fatal": true,
|
|
92
110
|
"discord": {
|
|
93
111
|
"emoji": "ποΈ",
|
|
@@ -118,6 +136,10 @@
|
|
|
118
136
|
"condition": {
|
|
119
137
|
"branchMatch": [
|
|
120
138
|
"master"
|
|
139
|
+
],
|
|
140
|
+
"allPassed": [
|
|
141
|
+
"build",
|
|
142
|
+
"test"
|
|
121
143
|
]
|
|
122
144
|
},
|
|
123
145
|
"settings": {
|
|
@@ -1,430 +1,436 @@
|
|
|
1
|
-
#
|
|
2
|
-
#
|
|
3
|
-
#
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
#
|
|
7
|
-
#
|
|
8
|
-
#
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
jobs:
|
|
17
|
-
trigger:
|
|
18
|
-
name: Overseer Trigger
|
|
19
|
-
runs-on: ubuntu-latest
|
|
20
|
-
timeout-minutes: 1
|
|
21
|
-
steps:
|
|
22
|
-
- uses: actions/checkout@v4
|
|
23
|
-
|
|
24
|
-
- name: Trigger Overseer Pipeline
|
|
25
|
-
uses: futdevpro/fdp-github-actions/overseer-trigger@master
|
|
26
|
-
with:
|
|
27
|
-
OVERSEER_WEBHOOK_URL: ${{ vars.OVERSEER_URL }}/pipeline-runner/webhook/github
|
|
28
|
-
OVERSEER_WEBHOOK_SECRET: ${{ secrets.OVERSEER_SECRET_KEY }}
|
|
29
|
-
|
|
30
|
-
# =============================================================================
|
|
31
|
-
# REGI WORKFLOW (fallback) β NE TOROLD!
|
|
32
|
-
# =============================================================================
|
|
33
|
-
# name: Test and Deploy
|
|
34
|
-
# on:
|
|
35
|
-
# push:
|
|
36
|
-
# branches:
|
|
37
|
-
# - '**'
|
|
38
|
-
# permissions:
|
|
39
|
-
# actions: read
|
|
40
|
-
# id-token: write
|
|
41
|
-
# contents: read
|
|
42
|
-
# checks: write
|
|
43
|
-
# issues: read
|
|
44
|
-
# pull-requests: write
|
|
45
|
-
# env:
|
|
46
|
-
# PACKAGE_NAME: ''
|
|
47
|
-
# THIS_VERSION: 0.0.0
|
|
48
|
-
# LATEST_VERSION: 0.0.0
|
|
49
|
-
# VERSION_PUBLISHED: true
|
|
50
|
-
#
|
|
51
|
-
#
|
|
52
|
-
# jobs:
|
|
53
|
-
# notification0:
|
|
54
|
-
# name: πΉ Discord start Notification
|
|
55
|
-
# runs-on: ubuntu-latest
|
|
56
|
-
# #runs-on: plo-koon
|
|
57
|
-
# timeout-minutes: 20
|
|
58
|
-
# outputs:
|
|
59
|
-
# start: ${{ steps.mark_start.outputs.started }}
|
|
60
|
-
# steps:
|
|
61
|
-
# - uses: actions/checkout@v4
|
|
62
|
-
# - id: mark_start
|
|
63
|
-
# run: echo "started=$(date +%s)" >> "$GITHUB_OUTPUT"
|
|
64
|
-
# - name: Send Discord start notification
|
|
65
|
-
# uses: futdevpro/fdp-github-actions/discord-start-notification@latest
|
|
66
|
-
# with:
|
|
67
|
-
# NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
68
|
-
# APPLICATION_NAME: "Dynamo-ESLint"
|
|
69
|
-
# APPLICATION_EMOJI: "π§"
|
|
70
|
-
# COMMIT_MESSAGE: ${{ github.event.head_commit.message }}
|
|
71
|
-
# EVENT_DATETIME: ${{ github.event.head_commit.timestamp }}
|
|
72
|
-
# DISCORD_WEBHOOK_ID: ${{ secrets.DISCORD_WEBHOOK_ID }}
|
|
73
|
-
# DISCORD_WEBHOOK_TOKEN: ${{ secrets.DISCORD_WEBHOOK_TOKEN }}
|
|
74
|
-
#
|
|
75
|
-
# notification0_fail_report:
|
|
76
|
-
# name: π£ Discord Start Notification Fail Report
|
|
77
|
-
# runs-on: ubuntu-latest
|
|
78
|
-
# #runs-on: plo-koon
|
|
79
|
-
# timeout-minutes: 20
|
|
80
|
-
# if: always() && needs.notification0.result == 'failure'
|
|
81
|
-
# needs: [notification0]
|
|
82
|
-
# steps:
|
|
83
|
-
# - name: send custom message with args
|
|
84
|
-
# uses: appleboy/discord-action@master
|
|
85
|
-
# with:
|
|
86
|
-
# webhook_id: ${{ secrets.DISCORD_WEBHOOK_ID }}
|
|
87
|
-
# webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }}
|
|
88
|
-
# message: |
|
|
89
|
-
# βββπ§ Failed to send Discord start notification for ${{ github.repository }}! [π](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})
|
|
90
|
-
#
|
|
91
|
-
# check_secrets:
|
|
92
|
-
# name: π Check Required Secrets and Variables
|
|
93
|
-
# #runs-on: ubuntu-latest
|
|
94
|
-
# runs-on: plo-koon
|
|
95
|
-
# timeout-minutes: 20
|
|
96
|
-
# steps:
|
|
97
|
-
# - name: Check Required Secrets and Variables
|
|
98
|
-
# uses: futdevpro/fdp-github-actions/check-secrets-and-variables@latest
|
|
99
|
-
# with:
|
|
100
|
-
# NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
101
|
-
# ITEMS_TO_CHECK: |
|
|
102
|
-
# [
|
|
103
|
-
# {
|
|
104
|
-
# "valueName": "NPM_TOKEN",
|
|
105
|
-
# "value": "${{ secrets.NPM_TOKEN }}",
|
|
106
|
-
# "type": "SECRET"
|
|
107
|
-
# },
|
|
108
|
-
# {
|
|
109
|
-
# "valueName": "DISCORD_WEBHOOK_ID",
|
|
110
|
-
# "value": "${{ secrets.DISCORD_WEBHOOK_ID }}",
|
|
111
|
-
# "type": "SECRET"
|
|
112
|
-
# },
|
|
113
|
-
# {
|
|
114
|
-
# "valueName": "DISCORD_WEBHOOK_TOKEN",
|
|
115
|
-
# "value": "${{ secrets.DISCORD_WEBHOOK_TOKEN }}",
|
|
116
|
-
# "type": "SECRET"
|
|
117
|
-
# },
|
|
118
|
-
# {
|
|
119
|
-
# "valueName": "OVERSEER_SECRET_KEY",
|
|
120
|
-
# "value": "${{ secrets.OVERSEER_SECRET_KEY }}",
|
|
121
|
-
# "type": "SECRET"
|
|
122
|
-
# },
|
|
123
|
-
#
|
|
124
|
-
# {
|
|
125
|
-
# "valueName": "OVERSEER_URL",
|
|
126
|
-
# "value": "${{ vars.OVERSEER_URL }}",
|
|
127
|
-
# "type": "VARIABLE"
|
|
128
|
-
# }
|
|
129
|
-
# ]
|
|
130
|
-
#
|
|
131
|
-
# check_dev_leftovers:
|
|
132
|
-
# name: π Check Dev leftovers
|
|
133
|
-
# #runs-on: ubuntu-latest
|
|
134
|
-
# runs-on: plo-koon
|
|
135
|
-
# timeout-minutes: 20
|
|
136
|
-
# steps:
|
|
137
|
-
# - name: Checkout code
|
|
138
|
-
# uses: actions/checkout@v4
|
|
139
|
-
#
|
|
140
|
-
# - name: Install Node.js
|
|
141
|
-
# uses: actions/setup-node@v2
|
|
142
|
-
# with:
|
|
143
|
-
# node-version: '16'
|
|
144
|
-
#
|
|
145
|
-
# # TODO: Check build version (to ALL packages)
|
|
146
|
-
# - name: Check build folder
|
|
147
|
-
# run: |
|
|
148
|
-
# node -e "
|
|
149
|
-
# const buildFolder = './build/';
|
|
150
|
-
# const fs = require('fs');
|
|
151
|
-
#
|
|
152
|
-
# fs.readdir(buildFolder, (err, files) => {
|
|
153
|
-
# if (!files?.length) {
|
|
154
|
-
# console.error(
|
|
155
|
-
# 'FDPError: ./build folder is MISSING!' +
|
|
156
|
-
# '\nbuild the project locally before push!'
|
|
157
|
-
# );
|
|
158
|
-
# process.exit(1);
|
|
159
|
-
# }
|
|
160
|
-
#
|
|
161
|
-
# if (files.includes('dynamo-eslint')) {
|
|
162
|
-
# console.error(
|
|
163
|
-
# 'FDPError: ./build contains dynamo-eslint folder which means this is a local dev build!' +
|
|
164
|
-
# '\nrebuild the project locally before push!'
|
|
165
|
-
# );
|
|
166
|
-
# process.exit(1);
|
|
167
|
-
# }
|
|
168
|
-
# });
|
|
169
|
-
# "
|
|
170
|
-
#
|
|
171
|
-
# test:
|
|
172
|
-
# name: π§ͺ Test Build
|
|
173
|
-
# runs-on: ubuntu-latest
|
|
174
|
-
# needs: [ check_dev_leftovers ]
|
|
175
|
-
# timeout-minutes: 20
|
|
176
|
-
# steps:
|
|
177
|
-
# - name: Checkout code
|
|
178
|
-
# uses: actions/checkout@v4
|
|
179
|
-
#
|
|
180
|
-
# - name: Set NPM RC
|
|
181
|
-
# run: |
|
|
182
|
-
# echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
|
|
183
|
-
#
|
|
184
|
-
# - name: Get safe-chain version
|
|
185
|
-
# run: |
|
|
186
|
-
# VERSION=$(curl -s https://api.github.com/repos/AikidoSec/safe-chain/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/' | sed 's/^v//')
|
|
187
|
-
# echo "SAFE_CHAIN_VERSION=$VERSION" >> $GITHUB_ENV
|
|
188
|
-
#
|
|
189
|
-
# - name: Install safe-chain
|
|
190
|
-
# run: |
|
|
191
|
-
# curl -fsSL https://raw.githubusercontent.com/AikidoSec/safe-chain/main/install-scripts/install-safe-chain.sh | sh -s -- --ci
|
|
192
|
-
#
|
|
193
|
-
# - name: Install pnpm
|
|
194
|
-
# run: |
|
|
195
|
-
# npm i -g pnpm
|
|
1
|
+
# WORKSPACE-WIDE DISABLED (2026-06-19) β per user-request
|
|
2
|
+
# Az Actions-percek megtakarΓtΓ‘sa miatt; a CICD-t a futdevpro Overseer
|
|
3
|
+
# webhook-rendszere irΓ‘nyΓtja. A workflow-trigger NEM aktivΓ‘lΓ³dik egyetlen
|
|
4
|
+
# push-ra sem, amΓg ez a komment-blokk fent van. VisszaΓ‘llΓtΓ‘shoz tΓΆrΓΆld
|
|
5
|
+
# a header-blokkot + uncomment minden kΓΆvetkezΕ sort (egy '# ' eltΓ‘volΓtΓ‘s).
|
|
6
|
+
# βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
7
|
+
# # =============================================================================
|
|
8
|
+
# # Dynamo-ESLint CI/CD β Overseer Pipeline Trigger
|
|
9
|
+
# # =============================================================================
|
|
10
|
+
# # Ez a workflow CSAK egy webhook-ot kuld az Overseer-nek es AZONNAL kilep.
|
|
11
|
+
# # A pipeline-t az Overseer FDP Runner-ek futtatjak (nem a GitHub Actions).
|
|
12
|
+
# #
|
|
13
|
+
# # A regi workflow-k a fajl vegen kommentben megtalalhatok (fallback).
|
|
14
|
+
# # =============================================================================
|
|
196
15
|
#
|
|
197
|
-
#
|
|
198
|
-
#
|
|
199
|
-
#
|
|
16
|
+
# name: Trigger Pipeline
|
|
17
|
+
# on:
|
|
18
|
+
# workflow_dispatch:
|
|
19
|
+
# # Az org-szintu GitHub webhook kozvetlenul triggereli az Overseer-t.
|
|
20
|
+
# # Ez a workflow csak manualis fallback (workflow_dispatch).
|
|
200
21
|
#
|
|
201
|
-
#
|
|
202
|
-
#
|
|
203
|
-
#
|
|
204
|
-
#
|
|
205
|
-
# - name: Install Jasmine
|
|
206
|
-
# run: |
|
|
207
|
-
# npm i -g jasmine
|
|
208
|
-
#
|
|
209
|
-
# - name: Test
|
|
210
|
-
# run: |
|
|
211
|
-
# jasmine
|
|
212
|
-
#
|
|
213
|
-
# - name: Test Pack
|
|
214
|
-
# run: |
|
|
215
|
-
# pnpm pack
|
|
216
|
-
#
|
|
217
|
-
#
|
|
218
|
-
# check_version:
|
|
219
|
-
# name: π Check Version
|
|
220
|
-
# needs: [ test ]
|
|
221
|
-
# #runs-on: ubuntu-latest
|
|
222
|
-
# runs-on: plo-koon
|
|
223
|
-
# timeout-minutes: 20
|
|
224
|
-
# outputs:
|
|
225
|
-
# version_published: ${{ steps.version_check_results.outputs.version_published }}
|
|
226
|
-
# steps:
|
|
227
|
-
# - name: Checkout code
|
|
228
|
-
# uses: actions/checkout@v4
|
|
229
|
-
#
|
|
230
|
-
# - name: Set Package Name
|
|
231
|
-
# run: |
|
|
232
|
-
# echo "PACKAGE_NAME=$(node -p -e "require('./package.json').name")" >> $GITHUB_ENV
|
|
233
|
-
#
|
|
234
|
-
# - name: Set RC
|
|
235
|
-
# run: |
|
|
236
|
-
# echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
|
|
237
|
-
#
|
|
238
|
-
# - name: Get This Version
|
|
239
|
-
# run: |
|
|
240
|
-
# RAW_THIS_VERSION=$(node -p -e "require('./package.json').version")
|
|
241
|
-
# # replace ALL: 'v0' with '', '01' with '1', '.0' with '.'
|
|
242
|
-
# RAW_THIS_VERSION=$(echo $RAW_THIS_VERSION | sed 's:v0::g' | sed 's:01:1:g' | sed -e 's:\.0:\.:g')
|
|
243
|
-
# echo "THIS_VERSION=$RAW_THIS_VERSION" >> $GITHUB_ENV
|
|
244
|
-
#
|
|
245
|
-
# - name: Get Latest Version
|
|
246
|
-
# run: |
|
|
247
|
-
# echo "LATEST_VERSION=$(npm view ${{ env.PACKAGE_NAME }} version)" >> $GITHUB_ENV
|
|
248
|
-
#
|
|
249
|
-
# - name: Check All Versions
|
|
250
|
-
# run: |
|
|
251
|
-
# ALL_VERSIONS=$(npm view ${{ env.PACKAGE_NAME }} versions)
|
|
252
|
-
# if echo "$ALL_VERSIONS" | grep -q "${{ env.THIS_VERSION }}"; then
|
|
253
|
-
# echo "VERSION_PUBLISHED=true" >> $GITHUB_ENV
|
|
254
|
-
# else
|
|
255
|
-
# echo "VERSION_PUBLISHED=false" >> $GITHUB_ENV
|
|
256
|
-
# fi
|
|
257
|
-
#
|
|
258
|
-
# - name: Version Check Results
|
|
259
|
-
# id: version_check_results
|
|
260
|
-
# run: |
|
|
261
|
-
# echo package name: "${{ env.PACKAGE_NAME }}"
|
|
262
|
-
# echo this: "${{ env.THIS_VERSION }}"
|
|
263
|
-
# echo latest: "${{ env.LATEST_VERSION }}"
|
|
264
|
-
# echo this is the latest: "${{ env.LATEST_VERSION == env.THIS_VERSION }}"
|
|
265
|
-
# echo this version is published: "${{ env.VERSION_PUBLISHED }}"
|
|
266
|
-
# echo all published versions: $(npm view ${{ env.PACKAGE_NAME }} versions)
|
|
267
|
-
# echo "::set-output name=version_published::${{ env.VERSION_PUBLISHED }}"
|
|
268
|
-
#
|
|
269
|
-
# deploy:
|
|
270
|
-
# needs: [ check_version ]
|
|
271
|
-
# name: π Deploy to NPM
|
|
22
|
+
# jobs:
|
|
23
|
+
# trigger:
|
|
24
|
+
# name: Overseer Trigger
|
|
272
25
|
# runs-on: ubuntu-latest
|
|
273
|
-
# timeout-minutes:
|
|
274
|
-
# if: ${{ needs.check_version.outputs.version_published != 'true' }}
|
|
26
|
+
# timeout-minutes: 1
|
|
275
27
|
# steps:
|
|
276
|
-
# -
|
|
277
|
-
# uses: actions/checkout@v4
|
|
278
|
-
#
|
|
279
|
-
# - name: Set RC
|
|
280
|
-
# run: |
|
|
281
|
-
# echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
|
|
282
|
-
#
|
|
283
|
-
# - name: Install pnpm
|
|
284
|
-
# run: |
|
|
285
|
-
# npm i -g pnpm
|
|
286
|
-
#
|
|
287
|
-
# - name: Install Packages
|
|
288
|
-
# run: |
|
|
289
|
-
# pnpm i
|
|
290
|
-
#
|
|
291
|
-
# - name: Build
|
|
292
|
-
# run: |
|
|
293
|
-
# npx tsc
|
|
294
|
-
#
|
|
295
|
-
# - name: Pack
|
|
296
|
-
# run: |
|
|
297
|
-
# pnpm pack
|
|
298
|
-
#
|
|
299
|
-
# - name: Publish
|
|
300
|
-
# run: |
|
|
301
|
-
# npm publish
|
|
28
|
+
# - uses: actions/checkout@v4
|
|
302
29
|
#
|
|
303
|
-
#
|
|
304
|
-
#
|
|
305
|
-
# needs: [
|
|
306
|
-
# notification0,
|
|
307
|
-
# check_dev_leftovers,
|
|
308
|
-
# test,
|
|
309
|
-
# check_version,
|
|
310
|
-
# deploy
|
|
311
|
-
# ]
|
|
312
|
-
# #runs-on: ubuntu-latest
|
|
313
|
-
# runs-on: plo-koon
|
|
314
|
-
# timeout-minutes: 20
|
|
315
|
-
# if: always()
|
|
316
|
-
# steps:
|
|
317
|
-
#
|
|
318
|
-
# # NEW IMPLEMENTATION using futdevpro/fdp-github-actions/send-build-report@master:
|
|
319
|
-
# - name: Checkout code
|
|
320
|
-
# uses: actions/checkout@v4
|
|
321
|
-
#
|
|
322
|
-
# - name: Send Build Report
|
|
323
|
-
# uses: futdevpro/fdp-github-actions/send-build-report@master
|
|
30
|
+
# - name: Trigger Overseer Pipeline
|
|
31
|
+
# uses: futdevpro/fdp-github-actions/overseer-trigger@master
|
|
324
32
|
# with:
|
|
325
|
-
#
|
|
326
|
-
#
|
|
327
|
-
# {
|
|
328
|
-
# "overseerUrl": "${{ vars.OVERSEER_URL }}",
|
|
329
|
-
# "overseerSecret": "${{ secrets.OVERSEER_SECRET_KEY }}",
|
|
330
|
-
# "branchName": "${{ github.ref_name }}",
|
|
331
|
-
# "repository": "${{ github.repository }}",
|
|
332
|
-
# "runId": "${{ github.run_id }}",
|
|
333
|
-
# "linkToAction": "https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}",
|
|
334
|
-
# "eventDateTime": "${{ needs.notification0.outputs.start }}",
|
|
335
|
-
# "projects": [
|
|
336
|
-
# {
|
|
337
|
-
# "environment": "prod",
|
|
338
|
-
# "stepResults": [
|
|
339
|
-
# {
|
|
340
|
-
# "stepName": "checkDevLeftovers",
|
|
341
|
-
# "resultCode": "${{ needs.check_dev_leftovers.result }}",
|
|
342
|
-
# "requirement": "optional"
|
|
343
|
-
# },
|
|
344
|
-
# {
|
|
345
|
-
# "stepName": "tests",
|
|
346
|
-
# "resultCode": "${{ needs.test.result }}",
|
|
347
|
-
# "requirement": "required"
|
|
348
|
-
# },
|
|
349
|
-
# {
|
|
350
|
-
# "stepName": "checkVersion",
|
|
351
|
-
# "resultCode": "${{ needs.check_version.result }}",
|
|
352
|
-
# "requirement": "required"
|
|
353
|
-
# },
|
|
354
|
-
# {
|
|
355
|
-
# "stepName": "deploy",
|
|
356
|
-
# "resultCode": "${{ needs.deploy.result }}",
|
|
357
|
-
# "requirement": "optional"
|
|
358
|
-
# }
|
|
359
|
-
# ]
|
|
360
|
-
# }
|
|
361
|
-
# ]
|
|
362
|
-
# }
|
|
363
|
-
#
|
|
33
|
+
# OVERSEER_WEBHOOK_URL: ${{ vars.OVERSEER_URL }}/pipeline-runner/webhook/github
|
|
34
|
+
# OVERSEER_WEBHOOK_SECRET: ${{ secrets.OVERSEER_SECRET_KEY }}
|
|
364
35
|
#
|
|
365
|
-
#
|
|
366
|
-
#
|
|
367
|
-
#
|
|
368
|
-
#
|
|
369
|
-
#
|
|
370
|
-
#
|
|
371
|
-
#
|
|
372
|
-
#
|
|
373
|
-
#
|
|
374
|
-
#
|
|
375
|
-
#
|
|
376
|
-
#
|
|
377
|
-
#
|
|
378
|
-
#
|
|
379
|
-
#
|
|
380
|
-
#
|
|
381
|
-
#
|
|
382
|
-
#
|
|
383
|
-
#
|
|
384
|
-
#
|
|
385
|
-
#
|
|
386
|
-
#
|
|
387
|
-
#
|
|
388
|
-
#
|
|
389
|
-
#
|
|
390
|
-
#
|
|
391
|
-
#
|
|
392
|
-
#
|
|
393
|
-
#
|
|
394
|
-
#
|
|
395
|
-
#
|
|
396
|
-
#
|
|
397
|
-
#
|
|
398
|
-
#
|
|
399
|
-
#
|
|
400
|
-
#
|
|
401
|
-
#
|
|
402
|
-
#
|
|
403
|
-
#
|
|
404
|
-
#
|
|
405
|
-
#
|
|
406
|
-
#
|
|
407
|
-
#
|
|
408
|
-
#
|
|
409
|
-
#
|
|
410
|
-
#
|
|
411
|
-
#
|
|
412
|
-
#
|
|
413
|
-
#
|
|
414
|
-
#
|
|
415
|
-
#
|
|
416
|
-
#
|
|
417
|
-
#
|
|
418
|
-
#
|
|
419
|
-
#
|
|
420
|
-
#
|
|
421
|
-
#
|
|
422
|
-
#
|
|
423
|
-
#
|
|
424
|
-
# }
|
|
425
|
-
#
|
|
426
|
-
#
|
|
427
|
-
#
|
|
428
|
-
#
|
|
429
|
-
#
|
|
430
|
-
#
|
|
36
|
+
# # =============================================================================
|
|
37
|
+
# # REGI WORKFLOW (fallback) β NE TOROLD!
|
|
38
|
+
# # =============================================================================
|
|
39
|
+
# # name: Test and Deploy
|
|
40
|
+
# # on:
|
|
41
|
+
# # push:
|
|
42
|
+
# # branches:
|
|
43
|
+
# # - '**'
|
|
44
|
+
# # permissions:
|
|
45
|
+
# # actions: read
|
|
46
|
+
# # id-token: write
|
|
47
|
+
# # contents: read
|
|
48
|
+
# # checks: write
|
|
49
|
+
# # issues: read
|
|
50
|
+
# # pull-requests: write
|
|
51
|
+
# # env:
|
|
52
|
+
# # PACKAGE_NAME: ''
|
|
53
|
+
# # THIS_VERSION: 0.0.0
|
|
54
|
+
# # LATEST_VERSION: 0.0.0
|
|
55
|
+
# # VERSION_PUBLISHED: true
|
|
56
|
+
# #
|
|
57
|
+
# #
|
|
58
|
+
# # jobs:
|
|
59
|
+
# # notification0:
|
|
60
|
+
# # name: πΉ Discord start Notification
|
|
61
|
+
# # runs-on: ubuntu-latest
|
|
62
|
+
# # #runs-on: plo-koon
|
|
63
|
+
# # timeout-minutes: 20
|
|
64
|
+
# # outputs:
|
|
65
|
+
# # start: ${{ steps.mark_start.outputs.started }}
|
|
66
|
+
# # steps:
|
|
67
|
+
# # - uses: actions/checkout@v4
|
|
68
|
+
# # - id: mark_start
|
|
69
|
+
# # run: echo "started=$(date +%s)" >> "$GITHUB_OUTPUT"
|
|
70
|
+
# # - name: Send Discord start notification
|
|
71
|
+
# # uses: futdevpro/fdp-github-actions/discord-start-notification@latest
|
|
72
|
+
# # with:
|
|
73
|
+
# # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
74
|
+
# # APPLICATION_NAME: "Dynamo-ESLint"
|
|
75
|
+
# # APPLICATION_EMOJI: "π§"
|
|
76
|
+
# # COMMIT_MESSAGE: ${{ github.event.head_commit.message }}
|
|
77
|
+
# # EVENT_DATETIME: ${{ github.event.head_commit.timestamp }}
|
|
78
|
+
# # DISCORD_WEBHOOK_ID: ${{ secrets.DISCORD_WEBHOOK_ID }}
|
|
79
|
+
# # DISCORD_WEBHOOK_TOKEN: ${{ secrets.DISCORD_WEBHOOK_TOKEN }}
|
|
80
|
+
# #
|
|
81
|
+
# # notification0_fail_report:
|
|
82
|
+
# # name: π£ Discord Start Notification Fail Report
|
|
83
|
+
# # runs-on: ubuntu-latest
|
|
84
|
+
# # #runs-on: plo-koon
|
|
85
|
+
# # timeout-minutes: 20
|
|
86
|
+
# # if: always() && needs.notification0.result == 'failure'
|
|
87
|
+
# # needs: [notification0]
|
|
88
|
+
# # steps:
|
|
89
|
+
# # - name: send custom message with args
|
|
90
|
+
# # uses: appleboy/discord-action@master
|
|
91
|
+
# # with:
|
|
92
|
+
# # webhook_id: ${{ secrets.DISCORD_WEBHOOK_ID }}
|
|
93
|
+
# # webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }}
|
|
94
|
+
# # message: |
|
|
95
|
+
# # βββπ§ Failed to send Discord start notification for ${{ github.repository }}! [π](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})
|
|
96
|
+
# #
|
|
97
|
+
# # check_secrets:
|
|
98
|
+
# # name: π Check Required Secrets and Variables
|
|
99
|
+
# # #runs-on: ubuntu-latest
|
|
100
|
+
# # runs-on: plo-koon
|
|
101
|
+
# # timeout-minutes: 20
|
|
102
|
+
# # steps:
|
|
103
|
+
# # - name: Check Required Secrets and Variables
|
|
104
|
+
# # uses: futdevpro/fdp-github-actions/check-secrets-and-variables@latest
|
|
105
|
+
# # with:
|
|
106
|
+
# # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
107
|
+
# # ITEMS_TO_CHECK: |
|
|
108
|
+
# # [
|
|
109
|
+
# # {
|
|
110
|
+
# # "valueName": "NPM_TOKEN",
|
|
111
|
+
# # "value": "${{ secrets.NPM_TOKEN }}",
|
|
112
|
+
# # "type": "SECRET"
|
|
113
|
+
# # },
|
|
114
|
+
# # {
|
|
115
|
+
# # "valueName": "DISCORD_WEBHOOK_ID",
|
|
116
|
+
# # "value": "${{ secrets.DISCORD_WEBHOOK_ID }}",
|
|
117
|
+
# # "type": "SECRET"
|
|
118
|
+
# # },
|
|
119
|
+
# # {
|
|
120
|
+
# # "valueName": "DISCORD_WEBHOOK_TOKEN",
|
|
121
|
+
# # "value": "${{ secrets.DISCORD_WEBHOOK_TOKEN }}",
|
|
122
|
+
# # "type": "SECRET"
|
|
123
|
+
# # },
|
|
124
|
+
# # {
|
|
125
|
+
# # "valueName": "OVERSEER_SECRET_KEY",
|
|
126
|
+
# # "value": "${{ secrets.OVERSEER_SECRET_KEY }}",
|
|
127
|
+
# # "type": "SECRET"
|
|
128
|
+
# # },
|
|
129
|
+
# #
|
|
130
|
+
# # {
|
|
131
|
+
# # "valueName": "OVERSEER_URL",
|
|
132
|
+
# # "value": "${{ vars.OVERSEER_URL }}",
|
|
133
|
+
# # "type": "VARIABLE"
|
|
134
|
+
# # }
|
|
135
|
+
# # ]
|
|
136
|
+
# #
|
|
137
|
+
# # check_dev_leftovers:
|
|
138
|
+
# # name: π Check Dev leftovers
|
|
139
|
+
# # #runs-on: ubuntu-latest
|
|
140
|
+
# # runs-on: plo-koon
|
|
141
|
+
# # timeout-minutes: 20
|
|
142
|
+
# # steps:
|
|
143
|
+
# # - name: Checkout code
|
|
144
|
+
# # uses: actions/checkout@v4
|
|
145
|
+
# #
|
|
146
|
+
# # - name: Install Node.js
|
|
147
|
+
# # uses: actions/setup-node@v2
|
|
148
|
+
# # with:
|
|
149
|
+
# # node-version: '16'
|
|
150
|
+
# #
|
|
151
|
+
# # # TODO: Check build version (to ALL packages)
|
|
152
|
+
# # - name: Check build folder
|
|
153
|
+
# # run: |
|
|
154
|
+
# # node -e "
|
|
155
|
+
# # const buildFolder = './build/';
|
|
156
|
+
# # const fs = require('fs');
|
|
157
|
+
# #
|
|
158
|
+
# # fs.readdir(buildFolder, (err, files) => {
|
|
159
|
+
# # if (!files?.length) {
|
|
160
|
+
# # console.error(
|
|
161
|
+
# # 'FDPError: ./build folder is MISSING!' +
|
|
162
|
+
# # '\nbuild the project locally before push!'
|
|
163
|
+
# # );
|
|
164
|
+
# # process.exit(1);
|
|
165
|
+
# # }
|
|
166
|
+
# #
|
|
167
|
+
# # if (files.includes('dynamo-eslint')) {
|
|
168
|
+
# # console.error(
|
|
169
|
+
# # 'FDPError: ./build contains dynamo-eslint folder which means this is a local dev build!' +
|
|
170
|
+
# # '\nrebuild the project locally before push!'
|
|
171
|
+
# # );
|
|
172
|
+
# # process.exit(1);
|
|
173
|
+
# # }
|
|
174
|
+
# # });
|
|
175
|
+
# # "
|
|
176
|
+
# #
|
|
177
|
+
# # test:
|
|
178
|
+
# # name: π§ͺ Test Build
|
|
179
|
+
# # runs-on: ubuntu-latest
|
|
180
|
+
# # needs: [ check_dev_leftovers ]
|
|
181
|
+
# # timeout-minutes: 20
|
|
182
|
+
# # steps:
|
|
183
|
+
# # - name: Checkout code
|
|
184
|
+
# # uses: actions/checkout@v4
|
|
185
|
+
# #
|
|
186
|
+
# # - name: Set NPM RC
|
|
187
|
+
# # run: |
|
|
188
|
+
# # echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
|
|
189
|
+
# #
|
|
190
|
+
# # - name: Get safe-chain version
|
|
191
|
+
# # run: |
|
|
192
|
+
# # VERSION=$(curl -s https://api.github.com/repos/AikidoSec/safe-chain/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/' | sed 's/^v//')
|
|
193
|
+
# # echo "SAFE_CHAIN_VERSION=$VERSION" >> $GITHUB_ENV
|
|
194
|
+
# #
|
|
195
|
+
# # - name: Install safe-chain
|
|
196
|
+
# # run: |
|
|
197
|
+
# # curl -fsSL https://raw.githubusercontent.com/AikidoSec/safe-chain/main/install-scripts/install-safe-chain.sh | sh -s -- --ci
|
|
198
|
+
# #
|
|
199
|
+
# # - name: Install pnpm
|
|
200
|
+
# # run: |
|
|
201
|
+
# # npm i -g pnpm
|
|
202
|
+
# #
|
|
203
|
+
# # - name: Install Packages
|
|
204
|
+
# # run: |
|
|
205
|
+
# # pnpm i --safe-chain-skip-minimum-package-age
|
|
206
|
+
# #
|
|
207
|
+
# # - name: Build
|
|
208
|
+
# # run: |
|
|
209
|
+
# # npx tsc
|
|
210
|
+
# #
|
|
211
|
+
# # - name: Install Jasmine
|
|
212
|
+
# # run: |
|
|
213
|
+
# # npm i -g jasmine
|
|
214
|
+
# #
|
|
215
|
+
# # - name: Test
|
|
216
|
+
# # run: |
|
|
217
|
+
# # jasmine
|
|
218
|
+
# #
|
|
219
|
+
# # - name: Test Pack
|
|
220
|
+
# # run: |
|
|
221
|
+
# # pnpm pack
|
|
222
|
+
# #
|
|
223
|
+
# #
|
|
224
|
+
# # check_version:
|
|
225
|
+
# # name: π Check Version
|
|
226
|
+
# # needs: [ test ]
|
|
227
|
+
# # #runs-on: ubuntu-latest
|
|
228
|
+
# # runs-on: plo-koon
|
|
229
|
+
# # timeout-minutes: 20
|
|
230
|
+
# # outputs:
|
|
231
|
+
# # version_published: ${{ steps.version_check_results.outputs.version_published }}
|
|
232
|
+
# # steps:
|
|
233
|
+
# # - name: Checkout code
|
|
234
|
+
# # uses: actions/checkout@v4
|
|
235
|
+
# #
|
|
236
|
+
# # - name: Set Package Name
|
|
237
|
+
# # run: |
|
|
238
|
+
# # echo "PACKAGE_NAME=$(node -p -e "require('./package.json').name")" >> $GITHUB_ENV
|
|
239
|
+
# #
|
|
240
|
+
# # - name: Set RC
|
|
241
|
+
# # run: |
|
|
242
|
+
# # echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
|
|
243
|
+
# #
|
|
244
|
+
# # - name: Get This Version
|
|
245
|
+
# # run: |
|
|
246
|
+
# # RAW_THIS_VERSION=$(node -p -e "require('./package.json').version")
|
|
247
|
+
# # # replace ALL: 'v0' with '', '01' with '1', '.0' with '.'
|
|
248
|
+
# # RAW_THIS_VERSION=$(echo $RAW_THIS_VERSION | sed 's:v0::g' | sed 's:01:1:g' | sed -e 's:\.0:\.:g')
|
|
249
|
+
# # echo "THIS_VERSION=$RAW_THIS_VERSION" >> $GITHUB_ENV
|
|
250
|
+
# #
|
|
251
|
+
# # - name: Get Latest Version
|
|
252
|
+
# # run: |
|
|
253
|
+
# # echo "LATEST_VERSION=$(npm view ${{ env.PACKAGE_NAME }} version)" >> $GITHUB_ENV
|
|
254
|
+
# #
|
|
255
|
+
# # - name: Check All Versions
|
|
256
|
+
# # run: |
|
|
257
|
+
# # ALL_VERSIONS=$(npm view ${{ env.PACKAGE_NAME }} versions)
|
|
258
|
+
# # if echo "$ALL_VERSIONS" | grep -q "${{ env.THIS_VERSION }}"; then
|
|
259
|
+
# # echo "VERSION_PUBLISHED=true" >> $GITHUB_ENV
|
|
260
|
+
# # else
|
|
261
|
+
# # echo "VERSION_PUBLISHED=false" >> $GITHUB_ENV
|
|
262
|
+
# # fi
|
|
263
|
+
# #
|
|
264
|
+
# # - name: Version Check Results
|
|
265
|
+
# # id: version_check_results
|
|
266
|
+
# # run: |
|
|
267
|
+
# # echo package name: "${{ env.PACKAGE_NAME }}"
|
|
268
|
+
# # echo this: "${{ env.THIS_VERSION }}"
|
|
269
|
+
# # echo latest: "${{ env.LATEST_VERSION }}"
|
|
270
|
+
# # echo this is the latest: "${{ env.LATEST_VERSION == env.THIS_VERSION }}"
|
|
271
|
+
# # echo this version is published: "${{ env.VERSION_PUBLISHED }}"
|
|
272
|
+
# # echo all published versions: $(npm view ${{ env.PACKAGE_NAME }} versions)
|
|
273
|
+
# # echo "::set-output name=version_published::${{ env.VERSION_PUBLISHED }}"
|
|
274
|
+
# #
|
|
275
|
+
# # deploy:
|
|
276
|
+
# # needs: [ check_version ]
|
|
277
|
+
# # name: π Deploy to NPM
|
|
278
|
+
# # runs-on: ubuntu-latest
|
|
279
|
+
# # timeout-minutes: 20
|
|
280
|
+
# # if: ${{ needs.check_version.outputs.version_published != 'true' }}
|
|
281
|
+
# # steps:
|
|
282
|
+
# # - name: Checkout code
|
|
283
|
+
# # uses: actions/checkout@v4
|
|
284
|
+
# #
|
|
285
|
+
# # - name: Set RC
|
|
286
|
+
# # run: |
|
|
287
|
+
# # echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
|
|
288
|
+
# #
|
|
289
|
+
# # - name: Install pnpm
|
|
290
|
+
# # run: |
|
|
291
|
+
# # npm i -g pnpm
|
|
292
|
+
# #
|
|
293
|
+
# # - name: Install Packages
|
|
294
|
+
# # run: |
|
|
295
|
+
# # pnpm i
|
|
296
|
+
# #
|
|
297
|
+
# # - name: Build
|
|
298
|
+
# # run: |
|
|
299
|
+
# # npx tsc
|
|
300
|
+
# #
|
|
301
|
+
# # - name: Pack
|
|
302
|
+
# # run: |
|
|
303
|
+
# # pnpm pack
|
|
304
|
+
# #
|
|
305
|
+
# # - name: Publish
|
|
306
|
+
# # run: |
|
|
307
|
+
# # npm publish
|
|
308
|
+
# #
|
|
309
|
+
# # build_report:
|
|
310
|
+
# # name: π Build Report
|
|
311
|
+
# # needs: [
|
|
312
|
+
# # notification0,
|
|
313
|
+
# # check_dev_leftovers,
|
|
314
|
+
# # test,
|
|
315
|
+
# # check_version,
|
|
316
|
+
# # deploy
|
|
317
|
+
# # ]
|
|
318
|
+
# # #runs-on: ubuntu-latest
|
|
319
|
+
# # runs-on: plo-koon
|
|
320
|
+
# # timeout-minutes: 20
|
|
321
|
+
# # if: always()
|
|
322
|
+
# # steps:
|
|
323
|
+
# #
|
|
324
|
+
# # # NEW IMPLEMENTATION using futdevpro/fdp-github-actions/send-build-report@master:
|
|
325
|
+
# # - name: Checkout code
|
|
326
|
+
# # uses: actions/checkout@v4
|
|
327
|
+
# #
|
|
328
|
+
# # - name: Send Build Report
|
|
329
|
+
# # uses: futdevpro/fdp-github-actions/send-build-report@master
|
|
330
|
+
# # with:
|
|
331
|
+
# # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
332
|
+
# # SETTINGS: |
|
|
333
|
+
# # {
|
|
334
|
+
# # "overseerUrl": "${{ vars.OVERSEER_URL }}",
|
|
335
|
+
# # "overseerSecret": "${{ secrets.OVERSEER_SECRET_KEY }}",
|
|
336
|
+
# # "branchName": "${{ github.ref_name }}",
|
|
337
|
+
# # "repository": "${{ github.repository }}",
|
|
338
|
+
# # "runId": "${{ github.run_id }}",
|
|
339
|
+
# # "linkToAction": "https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}",
|
|
340
|
+
# # "eventDateTime": "${{ needs.notification0.outputs.start }}",
|
|
341
|
+
# # "projects": [
|
|
342
|
+
# # {
|
|
343
|
+
# # "environment": "prod",
|
|
344
|
+
# # "stepResults": [
|
|
345
|
+
# # {
|
|
346
|
+
# # "stepName": "checkDevLeftovers",
|
|
347
|
+
# # "resultCode": "${{ needs.check_dev_leftovers.result }}",
|
|
348
|
+
# # "requirement": "optional"
|
|
349
|
+
# # },
|
|
350
|
+
# # {
|
|
351
|
+
# # "stepName": "tests",
|
|
352
|
+
# # "resultCode": "${{ needs.test.result }}",
|
|
353
|
+
# # "requirement": "required"
|
|
354
|
+
# # },
|
|
355
|
+
# # {
|
|
356
|
+
# # "stepName": "checkVersion",
|
|
357
|
+
# # "resultCode": "${{ needs.check_version.result }}",
|
|
358
|
+
# # "requirement": "required"
|
|
359
|
+
# # },
|
|
360
|
+
# # {
|
|
361
|
+
# # "stepName": "deploy",
|
|
362
|
+
# # "resultCode": "${{ needs.deploy.result }}",
|
|
363
|
+
# # "requirement": "optional"
|
|
364
|
+
# # }
|
|
365
|
+
# # ]
|
|
366
|
+
# # }
|
|
367
|
+
# # ]
|
|
368
|
+
# # }
|
|
369
|
+
# #
|
|
370
|
+
# #
|
|
371
|
+
# # end:
|
|
372
|
+
# # name: π― Discord Results
|
|
373
|
+
# # needs: [
|
|
374
|
+
# # notification0,
|
|
375
|
+
# # check_secrets,
|
|
376
|
+
# # check_dev_leftovers,
|
|
377
|
+
# # test,
|
|
378
|
+
# # check_version,
|
|
379
|
+
# # deploy,
|
|
380
|
+
# # build_report
|
|
381
|
+
# # ]
|
|
382
|
+
# # #runs-on: ubuntu-latest
|
|
383
|
+
# # runs-on: plo-koon
|
|
384
|
+
# # timeout-minutes: 20
|
|
385
|
+
# # if: always()
|
|
386
|
+
# # steps:
|
|
387
|
+
# # - name: Checkout code
|
|
388
|
+
# # uses: actions/checkout@v4
|
|
389
|
+
# #
|
|
390
|
+
# # - name: Send Discord result notification
|
|
391
|
+
# # uses: futdevpro/fdp-github-actions/discord-result-notification@latest
|
|
392
|
+
# # with:
|
|
393
|
+
# # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
394
|
+
# # APPLICATION_NAME: "Dynamo-ESLint"
|
|
395
|
+
# # APPLICATION_EMOJI: "π§"
|
|
396
|
+
# # BRANCH: ${{ github.ref_name }}
|
|
397
|
+
# # RUN_NUMBER: ${{ github.run_number }}
|
|
398
|
+
# # RUN_ID: ${{ github.run_id }}
|
|
399
|
+
# # REPOSITORY: ${{ github.repository }}
|
|
400
|
+
# # START_TIME: ${{ needs.notification0.outputs.start }}
|
|
401
|
+
# # DISCORD_WEBHOOK_ID: ${{ secrets.DISCORD_WEBHOOK_ID }}
|
|
402
|
+
# # DISCORD_WEBHOOK_TOKEN: ${{ secrets.DISCORD_WEBHOOK_TOKEN }}
|
|
403
|
+
# # STEPS_CONFIG: |
|
|
404
|
+
# # [
|
|
405
|
+
# # {
|
|
406
|
+
# # "stepName": "Secrets Check",
|
|
407
|
+
# # "stepEmoji": "π",
|
|
408
|
+
# # "resultCode": "${{ needs.check_secrets.result }}"
|
|
409
|
+
# # },
|
|
410
|
+
# # {
|
|
411
|
+
# # "stepName": "Dev Leftovers Check",
|
|
412
|
+
# # "stepEmoji": "π",
|
|
413
|
+
# # "resultCode": "${{ needs.check_dev_leftovers.result }}"
|
|
414
|
+
# # },
|
|
415
|
+
# # {
|
|
416
|
+
# # "stepName": "Test Build",
|
|
417
|
+
# # "stepEmoji": "π§ͺ",
|
|
418
|
+
# # "resultCode": "${{ needs.test.result }}"
|
|
419
|
+
# # },
|
|
420
|
+
# # {
|
|
421
|
+
# # "stepName": "Check Version",
|
|
422
|
+
# # "stepEmoji": "π",
|
|
423
|
+
# # "resultCode": "${{ needs.check_version.result }}"
|
|
424
|
+
# # },
|
|
425
|
+
# # {
|
|
426
|
+
# # "stepName": "Deploy",
|
|
427
|
+
# # "stepEmoji": "π¦",
|
|
428
|
+
# # "resultCode": "${{ needs.deploy.result }}",
|
|
429
|
+
# # "specialSuccessEmoji": "πππ"
|
|
430
|
+
# # },
|
|
431
|
+
# # {
|
|
432
|
+
# # "stepName": "Build Report",
|
|
433
|
+
# # "stepEmoji": "π",
|
|
434
|
+
# # "resultCode": "${{ needs.build_report.result }}"
|
|
435
|
+
# # }
|
|
436
|
+
# # ]
|
package/build/configs/ngx.js
CHANGED
|
@@ -74,7 +74,10 @@ module.exports = [
|
|
|
74
74
|
// 2026-06-05: warn-ra allitva, hogy a Signal-first komponensek (button-new,
|
|
75
75
|
// form-new, field-new, ...) build-jet ne tortje, viszont legacy
|
|
76
76
|
// zone.js-alapΓΊ expensive-call patternek meg felgyulladjanak.
|
|
77
|
-
|
|
77
|
+
// 2026-06-23: a signal-getterek (`_$`-suffix) NARROW exemptet kapnak (allowSuffix),
|
|
78
|
+
// mert a `()` invocation Angular 18 signal-ben a KANONIKUS read-pattern, nem anti-pattern;
|
|
79
|
+
// a valodi (nem-signal) metodus-hivasok templateben tovabbra is warn-olnak.
|
|
80
|
+
'@angular-eslint/template/no-call-expression': ['warn', { allowSuffix: '_$' }],
|
|
78
81
|
'@angular-eslint/template/no-duplicate-attributes': 'error',
|
|
79
82
|
'@angular-eslint/template/no-negated-async': 'error',
|
|
80
83
|
'@angular-eslint/template/use-track-by-function': 'error',
|
package/build/configs/ngx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx.js","sourceRoot":"","sources":["../../src/configs/ngx.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACxC,MAAM,aAAa,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;AAC/D,MAAM,qBAAqB,GAAG,OAAO,CAAC,wCAAwC,CAAC,CAAC;AAChF,MAAM,qBAAqB,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;AAEzE;;;;GAIG;AACH,MAAM,CAAC,OAAO,GAAG;IACf,GAAG,aAAa;IAChB;QACE,KAAK,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;QAC9B,eAAe,EAAE;YACf,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,eAAe;YACnC,OAAO,EAAE;gBACP,kBAAkB;gBAClB,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,UAAU;gBACpB,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,UAAU;gBACnB,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,UAAU;gBACrB,UAAU,EAAE,UAAU;gBACtB,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,UAAU;aACpB;SACF;QACD,OAAO,EAAE;YACP,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO;YAC3B,iBAAiB,EAAE,aAAa;SACjC;QACD,KAAK,EAAE;YACL,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK;YACzB,yBAAyB;YACzB,oCAAoC,EAAE,OAAO;YAC7C,oCAAoC,EAAE,OAAO;YAC7C,0CAA0C,EAAE,OAAO;YACnD,2CAA2C,EAAE,OAAO;YACpD,iCAAiC,EAAE,OAAO;YAC1C,kCAAkC,EAAE,OAAO;YAC3C,8CAA8C,EAAE,OAAO;YACvD,yCAAyC,EAAE,OAAO;YAClD,8CAA8C,EAAE,OAAO;YAEvD,4CAA4C;YAC5C,qCAAqC,EAAE,MAAM;YAC7C,2CAA2C,EAAE,MAAM;YACnD,sCAAsC,EAAE,MAAM;SAC/C;KACF;IACD;QACE,KAAK,EAAE,CAAC,WAAW,CAAC;QACpB,eAAe,EAAE;YACf,MAAM,EAAE,qBAAqB;YAC7B,aAAa,EAAE;gBACb,WAAW,EAAE,QAAQ;gBACrB,UAAU,EAAE,QAAQ;aACrB;SACF;QACD,OAAO,EAAE;YACP,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO;YAC3B,0BAA0B,EAAE,qBAAqB;SAClD;QACD,KAAK,EAAE;YACL,wCAAwC,EAAE,OAAO;YACjD,gDAAgD,EAAE,OAAO;YACzD,iCAAiC,EAAE,OAAO;YAC1C,0EAA0E;YAC1E,yEAAyE;YACzE,yEAAyE;YACzE,6DAA6D;YAC7D,4EAA4E;YAC5E,gEAAgE;YAChE,8DAA8D;YAC9D,6CAA6C,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"ngx.js","sourceRoot":"","sources":["../../src/configs/ngx.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACxC,MAAM,aAAa,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;AAC/D,MAAM,qBAAqB,GAAG,OAAO,CAAC,wCAAwC,CAAC,CAAC;AAChF,MAAM,qBAAqB,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;AAEzE;;;;GAIG;AACH,MAAM,CAAC,OAAO,GAAG;IACf,GAAG,aAAa;IAChB;QACE,KAAK,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;QAC9B,eAAe,EAAE;YACf,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,eAAe;YACnC,OAAO,EAAE;gBACP,kBAAkB;gBAClB,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,UAAU;gBACpB,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,UAAU;gBACnB,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,UAAU;gBACrB,UAAU,EAAE,UAAU;gBACtB,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,UAAU;aACpB;SACF;QACD,OAAO,EAAE;YACP,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO;YAC3B,iBAAiB,EAAE,aAAa;SACjC;QACD,KAAK,EAAE;YACL,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK;YACzB,yBAAyB;YACzB,oCAAoC,EAAE,OAAO;YAC7C,oCAAoC,EAAE,OAAO;YAC7C,0CAA0C,EAAE,OAAO;YACnD,2CAA2C,EAAE,OAAO;YACpD,iCAAiC,EAAE,OAAO;YAC1C,kCAAkC,EAAE,OAAO;YAC3C,8CAA8C,EAAE,OAAO;YACvD,yCAAyC,EAAE,OAAO;YAClD,8CAA8C,EAAE,OAAO;YAEvD,4CAA4C;YAC5C,qCAAqC,EAAE,MAAM;YAC7C,2CAA2C,EAAE,MAAM;YACnD,sCAAsC,EAAE,MAAM;SAC/C;KACF;IACD;QACE,KAAK,EAAE,CAAC,WAAW,CAAC;QACpB,eAAe,EAAE;YACf,MAAM,EAAE,qBAAqB;YAC7B,aAAa,EAAE;gBACb,WAAW,EAAE,QAAQ;gBACrB,UAAU,EAAE,QAAQ;aACrB;SACF;QACD,OAAO,EAAE;YACP,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO;YAC3B,0BAA0B,EAAE,qBAAqB;SAClD;QACD,KAAK,EAAE;YACL,wCAAwC,EAAE,OAAO;YACjD,gDAAgD,EAAE,OAAO;YACzD,iCAAiC,EAAE,OAAO;YAC1C,0EAA0E;YAC1E,yEAAyE;YACzE,yEAAyE;YACzE,6DAA6D;YAC7D,4EAA4E;YAC5E,gEAAgE;YAChE,8DAA8D;YAC9D,oFAAoF;YACpF,2FAA2F;YAC3F,4EAA4E;YAC5E,6CAA6C,EAAE,CAAE,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAC/E,kDAAkD,EAAE,OAAO;YAC3D,2CAA2C,EAAE,OAAO;YACpD,gDAAgD,EAAE,OAAO;YAEzD,kEAAkE;YAClE,8CAA8C,EAAE,MAAM;YACtD,2CAA2C,EAAE,MAAM;YACnD,qCAAqC,EAAE,MAAM;YAC7C,sCAAsC,EAAE,MAAM;SAC/C;KACF;CACF,CAAC"}
|
package/package.json
CHANGED
package/src/configs/ngx.ts
CHANGED
|
@@ -76,7 +76,10 @@ module.exports = [
|
|
|
76
76
|
// 2026-06-05: warn-ra allitva, hogy a Signal-first komponensek (button-new,
|
|
77
77
|
// form-new, field-new, ...) build-jet ne tortje, viszont legacy
|
|
78
78
|
// zone.js-alapΓΊ expensive-call patternek meg felgyulladjanak.
|
|
79
|
-
|
|
79
|
+
// 2026-06-23: a signal-getterek (`_$`-suffix) NARROW exemptet kapnak (allowSuffix),
|
|
80
|
+
// mert a `()` invocation Angular 18 signal-ben a KANONIKUS read-pattern, nem anti-pattern;
|
|
81
|
+
// a valodi (nem-signal) metodus-hivasok templateben tovabbra is warn-olnak.
|
|
82
|
+
'@angular-eslint/template/no-call-expression': [ 'warn', { allowSuffix: '_$' }],
|
|
80
83
|
'@angular-eslint/template/no-duplicate-attributes': 'error',
|
|
81
84
|
'@angular-eslint/template/no-negated-async': 'error',
|
|
82
85
|
'@angular-eslint/template/use-track-by-function': 'error',
|