envilder 0.7.0 → 0.7.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/LICENSE +21 -21
- package/README.md +259 -249
- package/ROADMAP.md +40 -67
- package/docs/CHANGELOG.md +345 -345
- package/docs/SECURITY.md +167 -167
- package/lib/apps/cli/Index.js +0 -0
- package/lib/envilder/infrastructure/variableStore/FileVariableStore.js +1 -1
- package/lib/envilder/infrastructure/variableStore/FileVariableStore.js.map +1 -1
- package/package.json +36 -33
package/docs/SECURITY.md
CHANGED
|
@@ -1,167 +1,167 @@
|
|
|
1
|
-
# Security Policy
|
|
2
|
-
|
|
3
|
-
## 🔒 Supported Versions
|
|
4
|
-
|
|
5
|
-
We release patches for security vulnerabilities only in the latest version:
|
|
6
|
-
|
|
7
|
-
| Version | Supported |
|
|
8
|
-
| ------- | ------------------ |
|
|
9
|
-
| Latest | ✅ |
|
|
10
|
-
| Older | ❌ |
|
|
11
|
-
|
|
12
|
-
## 🚨 Reporting a Vulnerability
|
|
13
|
-
|
|
14
|
-
**Please do not report security vulnerabilities through public GitHub issues.**
|
|
15
|
-
|
|
16
|
-
If you discover a security vulnerability in Envilder, please report it privately to help us address it before public disclosure.
|
|
17
|
-
|
|
18
|
-
### How to Report
|
|
19
|
-
|
|
20
|
-
1. **Email**: Send details to <mac.albert@gmail.com>
|
|
21
|
-
2. **Subject**: `[SECURITY] Envilder - [Brief Description]`
|
|
22
|
-
3. **Include**:
|
|
23
|
-
- Description of the vulnerability
|
|
24
|
-
- Steps to reproduce the issue
|
|
25
|
-
- Potential impact
|
|
26
|
-
- Suggested fix (if available)
|
|
27
|
-
- Your contact information for follow-up
|
|
28
|
-
|
|
29
|
-
### What to Expect
|
|
30
|
-
|
|
31
|
-
- **Acknowledgment**: I will acknowledge your email as soon as possible
|
|
32
|
-
- **Initial Assessment**: I'll provide an initial assessment and prioritize based on severity
|
|
33
|
-
- **Updates**: I'll keep you informed about the progress
|
|
34
|
-
- **Resolution**: I'll work to release a fix as soon as feasible (timeline depends on severity and complexity)
|
|
35
|
-
- **Credit**: You'll be credited in the security advisory (unless you prefer to remain anonymous)
|
|
36
|
-
|
|
37
|
-
**Note**: This is a solo open-source project maintained in my spare time. While I take security seriously,
|
|
38
|
-
response times may vary based on availability.
|
|
39
|
-
|
|
40
|
-
## 🛡️ Security Best Practices
|
|
41
|
-
|
|
42
|
-
When using Envilder, follow these security guidelines:
|
|
43
|
-
|
|
44
|
-
### AWS Credentials
|
|
45
|
-
|
|
46
|
-
**DO**:
|
|
47
|
-
|
|
48
|
-
- ✅ Use IAM roles with OIDC for GitHub Actions ([setup guide](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services))
|
|
49
|
-
- ✅ Use temporary credentials when possible
|
|
50
|
-
- ✅ Follow the principle of least privilege
|
|
51
|
-
|
|
52
|
-
**DON'T**:
|
|
53
|
-
|
|
54
|
-
- ❌ Store AWS access keys in code or environment variables
|
|
55
|
-
- ❌ Share AWS credentials via Slack, email, or chat
|
|
56
|
-
|
|
57
|
-
### IAM Permissions
|
|
58
|
-
|
|
59
|
-
Envilder requires these AWS permissions:
|
|
60
|
-
|
|
61
|
-
```json
|
|
62
|
-
{
|
|
63
|
-
"Version": "2012-10-17",
|
|
64
|
-
"Statement": [
|
|
65
|
-
{
|
|
66
|
-
"Effect": "Allow",
|
|
67
|
-
"Principal": {
|
|
68
|
-
"Federated": "arn:aws:iam::123456123456:oidc-provider/token.actions.githubusercontent.com"
|
|
69
|
-
},
|
|
70
|
-
"Action": "sts:AssumeRoleWithWebIdentity",
|
|
71
|
-
"Condition": {
|
|
72
|
-
"StringLike": {
|
|
73
|
-
"token.actions.githubusercontent.com:sub": "repo:octo-org/octo-repo:*"
|
|
74
|
-
},
|
|
75
|
-
"StringEquals": {
|
|
76
|
-
"token.actions.githubusercontent.com:aud": "sts.amazonaws.com"
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
]
|
|
81
|
-
}
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
**Recommendations**:
|
|
85
|
-
|
|
86
|
-
- Scope permissions to specific parameter paths (e.g., `/myapp/prod/*`)
|
|
87
|
-
- Use separate IAM roles for different environments (dev, staging, prod)
|
|
88
|
-
- Enable CloudTrail logging for audit trails
|
|
89
|
-
|
|
90
|
-
### Environment Files
|
|
91
|
-
|
|
92
|
-
**DO**:
|
|
93
|
-
|
|
94
|
-
- ✅ Add `.env` to `.gitignore`
|
|
95
|
-
- ✅ Use `.env.example` for documentation (without real values)
|
|
96
|
-
- ✅ Rotate secrets regularly
|
|
97
|
-
|
|
98
|
-
**DON'T**:
|
|
99
|
-
|
|
100
|
-
- ❌ Commit `.env` files to version control
|
|
101
|
-
- ❌ Share `.env` files via email or chat
|
|
102
|
-
|
|
103
|
-
### GitHub Actions
|
|
104
|
-
|
|
105
|
-
When using Envilder GitHub Action:
|
|
106
|
-
|
|
107
|
-
**DO**:
|
|
108
|
-
|
|
109
|
-
- ✅ Use OIDC authentication instead of static credentials ([OIDC setup guide](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services))
|
|
110
|
-
- ✅ Pin action versions (e.g., `@v1.0.0` instead of `@main`)
|
|
111
|
-
- ✅ Review action code before using in production
|
|
112
|
-
|
|
113
|
-
**DON'T**:
|
|
114
|
-
|
|
115
|
-
- ❌ Store AWS credentials in GitHub Secrets (use OIDC roles)
|
|
116
|
-
- ❌ Use overly permissive IAM policies
|
|
117
|
-
|
|
118
|
-
## 🔍 Security Audits
|
|
119
|
-
|
|
120
|
-
This project uses:
|
|
121
|
-
|
|
122
|
-
- **Snyk**: Vulnerability scanning for dependencies
|
|
123
|
-
- **Secretlint**: Prevents accidental secret commits
|
|
124
|
-
- **Biome**: Code quality and security linting
|
|
125
|
-
- **Dependabot**: Automated dependency updates
|
|
126
|
-
|
|
127
|
-
View current security status: [](https://snyk.io/test/github/macalbert/envilder)
|
|
128
|
-
|
|
129
|
-
## 📋 Known Security Considerations
|
|
130
|
-
|
|
131
|
-
### AWS SSM Parameter Store
|
|
132
|
-
|
|
133
|
-
- Parameters are encrypted at rest using AWS KMS
|
|
134
|
-
- All API calls are logged in CloudTrail
|
|
135
|
-
- Access is controlled via IAM policies
|
|
136
|
-
- Supports versioning and automatic rotation
|
|
137
|
-
|
|
138
|
-
### Local Environment Files
|
|
139
|
-
|
|
140
|
-
- Generated `.env` files contain sensitive data
|
|
141
|
-
- Ensure proper file permissions (e.g., `chmod 600 .env`)
|
|
142
|
-
- Delete or rotate secrets if `.env` is accidentally committed
|
|
143
|
-
|
|
144
|
-
## 🔗 Additional Resources
|
|
145
|
-
|
|
146
|
-
- [AWS SSM Security Best Practices](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-best-practices.html)
|
|
147
|
-
- [GitHub Actions Security Hardening](https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions)
|
|
148
|
-
- [OWASP Secrets Management Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/Secrets_Management_Cheat_Sheet.html)
|
|
149
|
-
|
|
150
|
-
## 📜 Disclosure Policy
|
|
151
|
-
|
|
152
|
-
When I receive a security vulnerability report:
|
|
153
|
-
|
|
154
|
-
1. I will confirm the vulnerability and determine its impact
|
|
155
|
-
2. I will develop and test a fix
|
|
156
|
-
3. I will release a security advisory and patched version
|
|
157
|
-
4. I will credit the reporter (unless anonymity is requested)
|
|
158
|
-
|
|
159
|
-
**Public Disclosure Timeline**:
|
|
160
|
-
|
|
161
|
-
- Critical vulnerabilities: Disclosed after patch is released
|
|
162
|
-
- Non-critical vulnerabilities: Coordinated disclosure with reasonable timeline based on severity
|
|
163
|
-
|
|
164
|
-
**Note**: As a solo maintainer working on this project in my spare time, I appreciate your
|
|
165
|
-
understanding regarding response and fix timelines.
|
|
166
|
-
|
|
167
|
-
Thank you for helping keep Envilder and its users safe! 🙏
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
## 🔒 Supported Versions
|
|
4
|
+
|
|
5
|
+
We release patches for security vulnerabilities only in the latest version:
|
|
6
|
+
|
|
7
|
+
| Version | Supported |
|
|
8
|
+
| ------- | ------------------ |
|
|
9
|
+
| Latest | ✅ |
|
|
10
|
+
| Older | ❌ |
|
|
11
|
+
|
|
12
|
+
## 🚨 Reporting a Vulnerability
|
|
13
|
+
|
|
14
|
+
**Please do not report security vulnerabilities through public GitHub issues.**
|
|
15
|
+
|
|
16
|
+
If you discover a security vulnerability in Envilder, please report it privately to help us address it before public disclosure.
|
|
17
|
+
|
|
18
|
+
### How to Report
|
|
19
|
+
|
|
20
|
+
1. **Email**: Send details to <mac.albert@gmail.com>
|
|
21
|
+
2. **Subject**: `[SECURITY] Envilder - [Brief Description]`
|
|
22
|
+
3. **Include**:
|
|
23
|
+
- Description of the vulnerability
|
|
24
|
+
- Steps to reproduce the issue
|
|
25
|
+
- Potential impact
|
|
26
|
+
- Suggested fix (if available)
|
|
27
|
+
- Your contact information for follow-up
|
|
28
|
+
|
|
29
|
+
### What to Expect
|
|
30
|
+
|
|
31
|
+
- **Acknowledgment**: I will acknowledge your email as soon as possible
|
|
32
|
+
- **Initial Assessment**: I'll provide an initial assessment and prioritize based on severity
|
|
33
|
+
- **Updates**: I'll keep you informed about the progress
|
|
34
|
+
- **Resolution**: I'll work to release a fix as soon as feasible (timeline depends on severity and complexity)
|
|
35
|
+
- **Credit**: You'll be credited in the security advisory (unless you prefer to remain anonymous)
|
|
36
|
+
|
|
37
|
+
**Note**: This is a solo open-source project maintained in my spare time. While I take security seriously,
|
|
38
|
+
response times may vary based on availability.
|
|
39
|
+
|
|
40
|
+
## 🛡️ Security Best Practices
|
|
41
|
+
|
|
42
|
+
When using Envilder, follow these security guidelines:
|
|
43
|
+
|
|
44
|
+
### AWS Credentials
|
|
45
|
+
|
|
46
|
+
**DO**:
|
|
47
|
+
|
|
48
|
+
- ✅ Use IAM roles with OIDC for GitHub Actions ([setup guide](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services))
|
|
49
|
+
- ✅ Use temporary credentials when possible
|
|
50
|
+
- ✅ Follow the principle of least privilege
|
|
51
|
+
|
|
52
|
+
**DON'T**:
|
|
53
|
+
|
|
54
|
+
- ❌ Store AWS access keys in code or environment variables
|
|
55
|
+
- ❌ Share AWS credentials via Slack, email, or chat
|
|
56
|
+
|
|
57
|
+
### IAM Permissions
|
|
58
|
+
|
|
59
|
+
Envilder requires these AWS permissions:
|
|
60
|
+
|
|
61
|
+
```json
|
|
62
|
+
{
|
|
63
|
+
"Version": "2012-10-17",
|
|
64
|
+
"Statement": [
|
|
65
|
+
{
|
|
66
|
+
"Effect": "Allow",
|
|
67
|
+
"Principal": {
|
|
68
|
+
"Federated": "arn:aws:iam::123456123456:oidc-provider/token.actions.githubusercontent.com"
|
|
69
|
+
},
|
|
70
|
+
"Action": "sts:AssumeRoleWithWebIdentity",
|
|
71
|
+
"Condition": {
|
|
72
|
+
"StringLike": {
|
|
73
|
+
"token.actions.githubusercontent.com:sub": "repo:octo-org/octo-repo:*"
|
|
74
|
+
},
|
|
75
|
+
"StringEquals": {
|
|
76
|
+
"token.actions.githubusercontent.com:aud": "sts.amazonaws.com"
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
]
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Recommendations**:
|
|
85
|
+
|
|
86
|
+
- Scope permissions to specific parameter paths (e.g., `/myapp/prod/*`)
|
|
87
|
+
- Use separate IAM roles for different environments (dev, staging, prod)
|
|
88
|
+
- Enable CloudTrail logging for audit trails
|
|
89
|
+
|
|
90
|
+
### Environment Files
|
|
91
|
+
|
|
92
|
+
**DO**:
|
|
93
|
+
|
|
94
|
+
- ✅ Add `.env` to `.gitignore`
|
|
95
|
+
- ✅ Use `.env.example` for documentation (without real values)
|
|
96
|
+
- ✅ Rotate secrets regularly
|
|
97
|
+
|
|
98
|
+
**DON'T**:
|
|
99
|
+
|
|
100
|
+
- ❌ Commit `.env` files to version control
|
|
101
|
+
- ❌ Share `.env` files via email or chat
|
|
102
|
+
|
|
103
|
+
### GitHub Actions
|
|
104
|
+
|
|
105
|
+
When using Envilder GitHub Action:
|
|
106
|
+
|
|
107
|
+
**DO**:
|
|
108
|
+
|
|
109
|
+
- ✅ Use OIDC authentication instead of static credentials ([OIDC setup guide](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services))
|
|
110
|
+
- ✅ Pin action versions (e.g., `@v1.0.0` instead of `@main`)
|
|
111
|
+
- ✅ Review action code before using in production
|
|
112
|
+
|
|
113
|
+
**DON'T**:
|
|
114
|
+
|
|
115
|
+
- ❌ Store AWS credentials in GitHub Secrets (use OIDC roles)
|
|
116
|
+
- ❌ Use overly permissive IAM policies
|
|
117
|
+
|
|
118
|
+
## 🔍 Security Audits
|
|
119
|
+
|
|
120
|
+
This project uses:
|
|
121
|
+
|
|
122
|
+
- **Snyk**: Vulnerability scanning for dependencies
|
|
123
|
+
- **Secretlint**: Prevents accidental secret commits
|
|
124
|
+
- **Biome**: Code quality and security linting
|
|
125
|
+
- **Dependabot**: Automated dependency updates
|
|
126
|
+
|
|
127
|
+
View current security status: [](https://snyk.io/test/github/macalbert/envilder)
|
|
128
|
+
|
|
129
|
+
## 📋 Known Security Considerations
|
|
130
|
+
|
|
131
|
+
### AWS SSM Parameter Store
|
|
132
|
+
|
|
133
|
+
- Parameters are encrypted at rest using AWS KMS
|
|
134
|
+
- All API calls are logged in CloudTrail
|
|
135
|
+
- Access is controlled via IAM policies
|
|
136
|
+
- Supports versioning and automatic rotation
|
|
137
|
+
|
|
138
|
+
### Local Environment Files
|
|
139
|
+
|
|
140
|
+
- Generated `.env` files contain sensitive data
|
|
141
|
+
- Ensure proper file permissions (e.g., `chmod 600 .env`)
|
|
142
|
+
- Delete or rotate secrets if `.env` is accidentally committed
|
|
143
|
+
|
|
144
|
+
## 🔗 Additional Resources
|
|
145
|
+
|
|
146
|
+
- [AWS SSM Security Best Practices](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-best-practices.html)
|
|
147
|
+
- [GitHub Actions Security Hardening](https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions)
|
|
148
|
+
- [OWASP Secrets Management Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/Secrets_Management_Cheat_Sheet.html)
|
|
149
|
+
|
|
150
|
+
## 📜 Disclosure Policy
|
|
151
|
+
|
|
152
|
+
When I receive a security vulnerability report:
|
|
153
|
+
|
|
154
|
+
1. I will confirm the vulnerability and determine its impact
|
|
155
|
+
2. I will develop and test a fix
|
|
156
|
+
3. I will release a security advisory and patched version
|
|
157
|
+
4. I will credit the reporter (unless anonymity is requested)
|
|
158
|
+
|
|
159
|
+
**Public Disclosure Timeline**:
|
|
160
|
+
|
|
161
|
+
- Critical vulnerabilities: Disclosed after patch is released
|
|
162
|
+
- Non-critical vulnerabilities: Coordinated disclosure with reasonable timeline based on severity
|
|
163
|
+
|
|
164
|
+
**Note**: As a solo maintainer working on this project in my spare time, I appreciate your
|
|
165
|
+
understanding regarding response and fix timelines.
|
|
166
|
+
|
|
167
|
+
Thank you for helping keep Envilder and its users safe! 🙏
|
package/lib/apps/cli/Index.js
CHANGED
|
File without changes
|
|
@@ -82,7 +82,7 @@ let FileVariableStore = class FileVariableStore {
|
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
84
|
escapeEnvValue(value) {
|
|
85
|
-
//
|
|
85
|
+
// codeql[js/incomplete-sanitization]
|
|
86
86
|
// CodeQL flags this as incomplete sanitization because we don't escape backslashes
|
|
87
87
|
// before newlines. However, this is intentional: the dotenv library does NOT
|
|
88
88
|
// interpret escape sequences (it treats \n literally as backslash+n, not as a newline).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileVariableStore.js","sourceRoot":"","sources":["../../../../src/envilder/infrastructure/variableStore/FileVariableStore.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qCAAqC,CAAC;AAG7C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAGhC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAG5B,YAAmC,MAAe;QAChD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,sBAAsB,CAAC,0BAA0B,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEK,UAAU,CAAC,MAAc;;YAC7B,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACnD,IAAI,CAAC;oBACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7B,CAAC;gBAAC,OAAO,IAAa,EAAE,CAAC;oBACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,MAAM,EAAE,CAAC,CAAC;oBACvD,MAAM,IAAI,oBAAoB,CAC5B,uCAAuC,MAAM,EAAE,CAChD,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;oBAC1C,MAAM,KAAK,CAAC;gBACd,CAAC;gBACD,MAAM,IAAI,oBAAoB,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;KAAA;IAEK,cAAc,CAAC,MAAc;;YACjC,MAAM,YAAY,GAA2B,EAAE,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YAAC,WAAM,CAAC;gBACP,OAAO,YAAY,CAAC;YACtB,CAAC;YACD,MAAM,kBAAkB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YAEvC,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;IAEK,eAAe,CACnB,WAAmB,EACnB,YAAoC;;YAEpC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;iBAC5C,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;iBAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YAC9C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,YAAY,EAAE,CAAC,CAAC;gBACvE,MAAM,IAAI,oBAAoB,CAC5B,qCAAqC,YAAY,EAAE,CACpD,CAAC;YACJ,CAAC;QACH,CAAC;KAAA;IAEO,cAAc,CAAC,KAAa;QAClC,
|
|
1
|
+
{"version":3,"file":"FileVariableStore.js","sourceRoot":"","sources":["../../../../src/envilder/infrastructure/variableStore/FileVariableStore.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,43 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "envilder",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.3",
|
|
4
4
|
"description": "A CLI that securely centralizes your environment variables from AWS SSM as a single source of truth",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "Marçal Albert Castellví",
|
|
7
|
+
"email": "mac.albert@gmail.com",
|
|
8
|
+
"url": "https://github.com/macalbert/envilder"
|
|
9
|
+
},
|
|
10
|
+
"repo": "github:macalbert/envilder",
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git://github.com/macalbert/envilder.git"
|
|
14
|
+
},
|
|
5
15
|
"main": "./lib/apps/cli/Index.js",
|
|
6
16
|
"bin": {
|
|
7
17
|
"envilder": "lib/apps/cli/Index.js"
|
|
8
18
|
},
|
|
19
|
+
"scripts": {
|
|
20
|
+
"clean": "pnpm store prune && pnpm dlx rimraf lib && pnpm dlx rimraf coverage && pnpm dlx rimraf node_modules",
|
|
21
|
+
"build": "tsc",
|
|
22
|
+
"build:gha": "ncc build src/apps/gha/Index.ts -o github-action/dist --minify",
|
|
23
|
+
"verify:gha": "pnpm build:gha && git diff --exit-code github-action/dist/index.js || (echo '❌ github-action/dist/index.js is not up to date. Run pnpm build:gha' && exit 1)",
|
|
24
|
+
"local:install": "pnpm build && node --loader ts-node/esm scripts/pack-and-install.ts",
|
|
25
|
+
"local:test-run": "pnpm build && node lib/apps/cli/Index.js --map=tests/sample/param-map.json --envfile=tests/sample/autogenerated.env",
|
|
26
|
+
"format": "biome format",
|
|
27
|
+
"format:write": "biome format --write",
|
|
28
|
+
"lint": "secretlint \"**/*\" && biome check --write && tsc --noEmit",
|
|
29
|
+
"lint:fix": "biome lint --fix",
|
|
30
|
+
"test": "vitest run --reporter=verbose --coverage",
|
|
31
|
+
"test:ci": "vitest run --reporter=verbose --reporter=junit --coverage --outputFile=coverage/junit/test-results.xml",
|
|
32
|
+
"changelog": "conventional-changelog -p angular -i docs/CHANGELOG.md -s",
|
|
33
|
+
"changelog:all": "conventional-changelog -p angular -i docs/CHANGELOG.md -s -r 0",
|
|
34
|
+
"publish": "pnpm lint && pnpm build && pnpm test && pnpm pack --dry-run && pnpm publish",
|
|
35
|
+
"action-publish": "pnpm build:gha && pnpm verify:gha",
|
|
36
|
+
"release-patch": "pnpm version patch && pnpm changelog",
|
|
37
|
+
"release-minor": "pnpm version minor && pnpm changelog",
|
|
38
|
+
"release-major": "pnpm version major && pnpm changelog",
|
|
39
|
+
"release-prerelease": "pnpm version prerelease"
|
|
40
|
+
},
|
|
9
41
|
"keywords": [
|
|
10
42
|
"env",
|
|
11
43
|
"dotenv",
|
|
@@ -26,16 +58,9 @@
|
|
|
26
58
|
"github-action",
|
|
27
59
|
"actions"
|
|
28
60
|
],
|
|
29
|
-
"repository": {
|
|
30
|
-
"type": "git",
|
|
31
|
-
"url": "git://github.com/macalbert/envilder.git"
|
|
32
|
-
},
|
|
33
61
|
"bugs": {
|
|
34
62
|
"url": "https://github.com/macalbert/envilder/issues"
|
|
35
63
|
},
|
|
36
|
-
"author": "Marçal Albert Castellví",
|
|
37
|
-
"email": "mac.albert@gmail.com",
|
|
38
|
-
"url": "https://github.com/macalbert/envilder",
|
|
39
64
|
"license": "MIT",
|
|
40
65
|
"publishConfig": {
|
|
41
66
|
"access": "public"
|
|
@@ -61,8 +86,8 @@
|
|
|
61
86
|
},
|
|
62
87
|
"devDependencies": {
|
|
63
88
|
"@biomejs/biome": "^2.3.5",
|
|
64
|
-
"@commitlint/cli": "^
|
|
65
|
-
"@commitlint/config-conventional": "^
|
|
89
|
+
"@commitlint/cli": "^20.1.0",
|
|
90
|
+
"@commitlint/config-conventional": "^20.0.0",
|
|
66
91
|
"@secretlint/secretlint-rule-preset-recommend": "^11.2.5",
|
|
67
92
|
"@testcontainers/localstack": "^11.8.1",
|
|
68
93
|
"@vercel/ncc": "^0.38.4",
|
|
@@ -77,27 +102,5 @@
|
|
|
77
102
|
},
|
|
78
103
|
"engines": {
|
|
79
104
|
"node": ">=20.0.0"
|
|
80
|
-
},
|
|
81
|
-
"scripts": {
|
|
82
|
-
"clean": "pnpm store prune && pnpm dlx rimraf lib && pnpm dlx rimraf coverage && pnpm dlx rimraf node_modules",
|
|
83
|
-
"build": "tsc",
|
|
84
|
-
"build:gha": "ncc build src/apps/gha/Index.ts -o github-action/dist --minify",
|
|
85
|
-
"verify:gha": "pnpm build:gha && git diff --exit-code github-action/dist/index.js || (echo '❌ github-action/dist/index.js is not up to date. Run pnpm build:gha' && exit 1)",
|
|
86
|
-
"local:install": "pnpm build && node --loader ts-node/esm scripts/pack-and-install.ts",
|
|
87
|
-
"local:test-run": "pnpm build && node lib/apps/cli/Index.js --map=tests/sample/param-map.json --envfile=tests/sample/autogenerated.env",
|
|
88
|
-
"format": "biome format",
|
|
89
|
-
"format:write": "biome format --write",
|
|
90
|
-
"lint": "secretlint \"**/*\" && biome check --write && tsc --noEmit",
|
|
91
|
-
"lint:fix": "biome lint --fix",
|
|
92
|
-
"test": "vitest run --reporter=verbose --coverage",
|
|
93
|
-
"test:ci": "vitest run --reporter=verbose --reporter=junit --coverage --outputFile=coverage/junit/test-results.xml",
|
|
94
|
-
"changelog": "conventional-changelog -p angular -i docs/CHANGELOG.md -s",
|
|
95
|
-
"changelog:all": "conventional-changelog -p angular -i docs/CHANGELOG.md -s -r 0",
|
|
96
|
-
"pnpm-publish": "pnpm lint && pnpm build && pnpm test && pnpm pack --dry-run && pnpm publish",
|
|
97
|
-
"action-publish": "pnpm build:gha && pnpm verify:gha",
|
|
98
|
-
"pnpm-release-patch": "pnpm version patch && pnpm changelog",
|
|
99
|
-
"pnpm-release-minor": "pnpm version minor && pnpm changelog",
|
|
100
|
-
"pnpm-release-major": "pnpm version major && pnpm changelog",
|
|
101
|
-
"pnpm-release-prerelease": "pnpm version prerelease"
|
|
102
105
|
}
|
|
103
|
-
}
|
|
106
|
+
}
|