@biffo/cli 0.33.3
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/core.version +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +6090 -0
- package/package.json +69 -0
- package/schemas/biffo-config.schema.json +89 -0
package/package.json
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@biffo/cli",
|
|
3
|
+
"version": "0.33.3",
|
|
4
|
+
"description": "Biffo project scaffolding CLI",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"bin": {
|
|
8
|
+
"biffo": "./dist/index.js"
|
|
9
|
+
},
|
|
10
|
+
"main": "./dist/index.js",
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/keiranholloway/biffo-template.git",
|
|
14
|
+
"directory": "cli"
|
|
15
|
+
},
|
|
16
|
+
"publishConfig": {
|
|
17
|
+
"access": "public",
|
|
18
|
+
"provenance": true
|
|
19
|
+
},
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=22.0.0"
|
|
22
|
+
},
|
|
23
|
+
"files": [
|
|
24
|
+
"dist",
|
|
25
|
+
"schemas",
|
|
26
|
+
"core.version"
|
|
27
|
+
],
|
|
28
|
+
"scripts": {
|
|
29
|
+
"build": "tsup src/index.ts --format esm --dts --clean",
|
|
30
|
+
"prepack": "node scripts/sync-core-version.mjs",
|
|
31
|
+
"postpack": "node -e \"require('node:fs').rmSync('core.version',{force:true})\"",
|
|
32
|
+
"dev": "tsx watch src/index.ts",
|
|
33
|
+
"lint": "eslint src/",
|
|
34
|
+
"lint:fix": "eslint src/ --fix",
|
|
35
|
+
"typecheck": "tsc --noEmit",
|
|
36
|
+
"test": "vitest run",
|
|
37
|
+
"check:core-bump": "tsx src/scripts/check-core-version-bump.ts",
|
|
38
|
+
"check:plugin-terraform": "tsx src/scripts/check-plugin-terraform.ts",
|
|
39
|
+
"sync:core-tag": "tsx src/scripts/sync-core-tag.ts"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@aws-sdk/client-cloudformation": "^3.726.1",
|
|
43
|
+
"@aws-sdk/client-iam": "^3.726.1",
|
|
44
|
+
"@aws-sdk/client-lambda": "^3.726.1",
|
|
45
|
+
"@aws-sdk/client-s3": "^3.726.1",
|
|
46
|
+
"@aws-sdk/client-sts": "^3.726.1",
|
|
47
|
+
"@octokit/rest": "^21.0.2",
|
|
48
|
+
"chalk": "^5.4.1",
|
|
49
|
+
"commander": "^12.1.0",
|
|
50
|
+
"execa": "^9.5.2",
|
|
51
|
+
"inquirer": "^12.3.0",
|
|
52
|
+
"ora": "^8.1.1",
|
|
53
|
+
"zod": "^3.24.1"
|
|
54
|
+
},
|
|
55
|
+
"devDependencies": {
|
|
56
|
+
"@biffo/eslint-config": "workspace:*",
|
|
57
|
+
"@biffo/typescript-config": "workspace:*",
|
|
58
|
+
"@types/node": "^22.10.5",
|
|
59
|
+
"aws-sdk-client-mock": "^4.1.0",
|
|
60
|
+
"aws-sdk-client-mock-vitest": "^7.1.0",
|
|
61
|
+
"eslint": "^9.18.0",
|
|
62
|
+
"msw": "^2.14.6",
|
|
63
|
+
"tsup": "^8.3.5",
|
|
64
|
+
"tsx": "^4.19.2",
|
|
65
|
+
"typescript": "^5.7.3",
|
|
66
|
+
"vite": "^6.4.3",
|
|
67
|
+
"vitest": "^4.1.0"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "https://biffo.dev/schemas/biffo-config.schema.json",
|
|
4
|
+
"title": "BiffoConfig",
|
|
5
|
+
"description": "Configuration schema for a Biffo project",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["project", "source_control", "cloud", "admin"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"project": {
|
|
10
|
+
"type": "object",
|
|
11
|
+
"required": ["name"],
|
|
12
|
+
"properties": {
|
|
13
|
+
"name": { "type": "string", "pattern": "^[a-z0-9-]+$" },
|
|
14
|
+
"description": { "type": "string" },
|
|
15
|
+
"domain": { "type": "string" }
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"dns": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"properties": {
|
|
21
|
+
"mode": { "type": "string", "enum": ["managed-route53", "external", "none"] },
|
|
22
|
+
"domain": { "type": "string" }
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"source_control": {
|
|
26
|
+
"type": "object",
|
|
27
|
+
"required": ["provider", "config"],
|
|
28
|
+
"properties": {
|
|
29
|
+
"provider": { "type": "string", "enum": ["github"] },
|
|
30
|
+
"config": {
|
|
31
|
+
"type": "object",
|
|
32
|
+
"required": ["org", "repo"],
|
|
33
|
+
"properties": {
|
|
34
|
+
"org": { "type": "string" },
|
|
35
|
+
"repo": { "type": "string" }
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"cloud": {
|
|
41
|
+
"type": "object",
|
|
42
|
+
"required": ["provider", "config"],
|
|
43
|
+
"properties": {
|
|
44
|
+
"provider": { "type": "string", "enum": ["aws"] },
|
|
45
|
+
"config": {
|
|
46
|
+
"type": "object",
|
|
47
|
+
"required": ["account_id", "region"],
|
|
48
|
+
"properties": {
|
|
49
|
+
"account_id": { "type": "string", "pattern": "^\\d{12}$" },
|
|
50
|
+
"region": { "type": "string" },
|
|
51
|
+
"profile": { "type": "string" },
|
|
52
|
+
"oidc_role_arn": { "type": "string" }
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"environments": {
|
|
58
|
+
"type": "array",
|
|
59
|
+
"items": { "type": "string", "enum": ["dev", "staging", "prod"] },
|
|
60
|
+
"minItems": 1
|
|
61
|
+
},
|
|
62
|
+
"admin": {
|
|
63
|
+
"type": "object",
|
|
64
|
+
"required": ["email", "username"],
|
|
65
|
+
"properties": {
|
|
66
|
+
"email": { "type": "string", "format": "email" },
|
|
67
|
+
"username": { "type": "string" }
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"database": {
|
|
71
|
+
"type": "object",
|
|
72
|
+
"properties": {
|
|
73
|
+
"schema_path": { "type": ["string", "null"] },
|
|
74
|
+
"migrations_path": { "type": "string" }
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
"modules": {
|
|
78
|
+
"type": "object",
|
|
79
|
+
"properties": {
|
|
80
|
+
"auth": { "type": "string", "enum": ["cognito"] },
|
|
81
|
+
"events": { "type": "string", "enum": ["eventbridge"] },
|
|
82
|
+
"storage": { "type": "string", "enum": ["s3"] },
|
|
83
|
+
"database": { "type": "string", "enum": ["postgresql"] },
|
|
84
|
+
"compute": { "type": "string", "enum": ["lambda"] },
|
|
85
|
+
"cdn": { "type": "string", "enum": ["cloudfront"] }
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|