cerber-core 1.1.5 → 1.1.7
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/CHANGELOG.md +111 -0
- package/README.md +206 -36
- package/bin/cerber +14 -1
- package/dev/templates/BACKEND_SCHEMA.ts.tpl +87 -50
- package/dev/templates/cerber-guardian.mjs.tpl +254 -148
- package/dev/templates/cerber.yml.tpl +96 -53
- package/dev/templates/pre-commit.tpl +4 -4
- package/dist/cli/contract-parser.d.ts.map +1 -1
- package/dist/cli/contract-parser.js +47 -20
- package/dist/cli/contract-parser.js.map +1 -1
- package/dist/cli/doctor.d.ts +16 -0
- package/dist/cli/doctor.d.ts.map +1 -0
- package/dist/cli/doctor.js +140 -0
- package/dist/cli/doctor.js.map +1 -0
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +93 -8
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/override-validator.d.ts +27 -0
- package/dist/cli/override-validator.d.ts.map +1 -0
- package/dist/cli/override-validator.js +100 -0
- package/dist/cli/override-validator.js.map +1 -0
- package/dist/cli/template-generator.d.ts.map +1 -1
- package/dist/cli/template-generator.js +71 -16
- package/dist/cli/template-generator.js.map +1 -1
- package/dist/cli/types.d.ts +7 -0
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/package.json +10 -2
- package/solo/templates/BACKEND_SCHEMA.ts.tpl +87 -50
- package/solo/templates/cerber-guardian.mjs.tpl +254 -148
- package/solo/templates/cerber.yml.tpl +96 -53
- package/solo/templates/pre-commit.tpl +4 -4
- package/team/templates/BACKEND_SCHEMA.ts.tpl +87 -50
- package/team/templates/CODEOWNERS.tpl +18 -6
- package/team/templates/cerber-guardian.mjs.tpl +254 -148
- package/team/templates/cerber.yml.tpl +96 -53
- package/team/templates/pre-commit.tpl +4 -4
|
@@ -1,53 +1,96 @@
|
|
|
1
|
-
# Generated by Cerber init
|
|
2
|
-
name: Cerber CI
|
|
3
|
-
|
|
4
|
-
on:
|
|
5
|
-
push:
|
|
6
|
-
branches: {{CI_BRANCHES}}
|
|
7
|
-
pull_request:
|
|
8
|
-
branches: {{CI_BRANCHES}}
|
|
9
|
-
workflow_dispatch:
|
|
10
|
-
|
|
11
|
-
jobs:
|
|
12
|
-
cerber-
|
|
13
|
-
name: Cerber
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
|
|
16
|
-
steps:
|
|
17
|
-
- name: Checkout code
|
|
18
|
-
uses: actions/checkout@v4
|
|
19
|
-
|
|
20
|
-
- name:
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
- name:
|
|
46
|
-
run: |
|
|
47
|
-
if
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
fi
|
|
52
|
-
|
|
53
|
-
|
|
1
|
+
# Generated by Cerber init
|
|
2
|
+
name: Cerber CI
|
|
3
|
+
|
|
4
|
+
on:
|
|
5
|
+
push:
|
|
6
|
+
branches: {{CI_BRANCHES}}
|
|
7
|
+
pull_request:
|
|
8
|
+
branches: {{CI_BRANCHES}}
|
|
9
|
+
workflow_dispatch:
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
cerber-integrity:
|
|
13
|
+
name: Cerber Self-Protection
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
|
|
16
|
+
steps:
|
|
17
|
+
- name: Checkout code
|
|
18
|
+
uses: actions/checkout@v4
|
|
19
|
+
|
|
20
|
+
- name: Verify protected files exist
|
|
21
|
+
run: |
|
|
22
|
+
echo "🛡️ Cerber Integrity Check"
|
|
23
|
+
MISSING=0
|
|
24
|
+
|
|
25
|
+
# Check core files
|
|
26
|
+
[ ! -f "CERBER.md" ] && echo "❌ CERBER.md missing" && MISSING=1
|
|
27
|
+
[ ! -f ".github/workflows/cerber.yml" ] && echo "❌ cerber.yml missing" && MISSING=1
|
|
28
|
+
[ ! -f "scripts/cerber-guardian.mjs" ] && echo "❌ cerber-guardian.mjs missing" && MISSING=1
|
|
29
|
+
[ ! -f ".husky/pre-commit" ] && echo "❌ pre-commit hook missing" && MISSING=1
|
|
30
|
+
|
|
31
|
+
# Check schema file (strict mode only)
|
|
32
|
+
SCHEMA_MODE=$(grep -A 10 "^schema:" CERBER.md | grep "mode:" | awk '{print $2}' | head -1)
|
|
33
|
+
if [ "$SCHEMA_MODE" = "strict" ]; then
|
|
34
|
+
SCHEMA_FILE=$(grep -A 10 "^schema:" CERBER.md | grep "file:" | awk '{print $2}' | head -1)
|
|
35
|
+
[ ! -f "$SCHEMA_FILE" ] && echo "❌ Schema file $SCHEMA_FILE missing (strict mode)" && MISSING=1
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
if [ $MISSING -eq 1 ]; then
|
|
39
|
+
echo "🚨 Protected files missing. Cerber self-protection compromised."
|
|
40
|
+
exit 1
|
|
41
|
+
fi
|
|
42
|
+
|
|
43
|
+
echo "✅ All protected files present"
|
|
44
|
+
|
|
45
|
+
- name: Verify cerber-ci job exists
|
|
46
|
+
run: |
|
|
47
|
+
if ! grep -q "cerber-ci:" .github/workflows/cerber.yml; then
|
|
48
|
+
echo "🚨 Job 'cerber-ci' not found in cerber.yml"
|
|
49
|
+
echo "Never rename or remove the cerber-ci job ID"
|
|
50
|
+
exit 1
|
|
51
|
+
fi
|
|
52
|
+
echo "✅ cerber-ci job ID intact"
|
|
53
|
+
|
|
54
|
+
cerber-ci:
|
|
55
|
+
name: Cerber CI
|
|
56
|
+
runs-on: ubuntu-latest
|
|
57
|
+
needs: [cerber-integrity]
|
|
58
|
+
|
|
59
|
+
steps:
|
|
60
|
+
- name: Checkout code
|
|
61
|
+
uses: actions/checkout@v4
|
|
62
|
+
|
|
63
|
+
- name: Setup Node.js
|
|
64
|
+
uses: actions/setup-node@v4
|
|
65
|
+
with:
|
|
66
|
+
node-version: '20'
|
|
67
|
+
cache: 'npm'
|
|
68
|
+
|
|
69
|
+
- name: Install dependencies
|
|
70
|
+
run: npm ci
|
|
71
|
+
|
|
72
|
+
- name: Build (if script exists)
|
|
73
|
+
run: |
|
|
74
|
+
if npm run | grep -q "build"; then
|
|
75
|
+
npm run build
|
|
76
|
+
else
|
|
77
|
+
echo "No build script defined; skipping"
|
|
78
|
+
fi
|
|
79
|
+
|
|
80
|
+
- name: Test (if script exists)
|
|
81
|
+
run: |
|
|
82
|
+
if npm run | grep -q "test"; then
|
|
83
|
+
npm test
|
|
84
|
+
else
|
|
85
|
+
echo "No test script defined; skipping"
|
|
86
|
+
fi
|
|
87
|
+
|
|
88
|
+
- name: Run Guardian
|
|
89
|
+
run: |
|
|
90
|
+
if npm run | grep -q "cerber:guardian"; then
|
|
91
|
+
npm run cerber:guardian
|
|
92
|
+
else
|
|
93
|
+
node scripts/cerber-guardian.mjs
|
|
94
|
+
fi
|
|
95
|
+
|
|
96
|
+
{{POST_DEPLOY_BLOCK}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#!/bin/sh
|
|
2
|
-
# Generated by Cerber init
|
|
3
|
-
|
|
4
|
-
npm run cerber:guardian
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
# Generated by Cerber init
|
|
3
|
+
|
|
4
|
+
npm run cerber:guardian
|