certifyclouds 1.2.2__tar.gz → 1.3.3__tar.gz

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.
@@ -3,9 +3,17 @@
3
3
  .env.local
4
4
  .env.*.local
5
5
  .dev.vars
6
+ .release-env
7
+ .release-env.*
6
8
  *.pem
7
9
  *.key
8
10
  .mcp.json
11
+ .eslintcache
12
+
13
+ # Sensitive business data (GDPR)
14
+ marketing/outreach/leads.json
15
+ marketing/outreach/outreach_log.json
16
+ marketing/outreach/CLIENTS.md
9
17
 
10
18
  # Local tools (MCP servers)
11
19
  tools/
@@ -13,6 +21,9 @@ tools/
13
21
  # Customer data
14
22
  customer-packages/
15
23
 
24
+ # Local doc backups (created during cleanup work)
25
+ .docs-backup-*/
26
+
16
27
  # Security scan reports (contain vulnerability details)
17
28
  security-reports/
18
29
 
@@ -86,6 +97,10 @@ e2e/node_modules/
86
97
  e2e/.playwright/
87
98
  e2e/e2e/.auth/
88
99
 
100
+ # Auto-generated marketing screenshots (regenerated on every E2E run by
101
+ # e2e/api/take-screenshots.spec.ts — should NOT be checked in)
102
+ website/assets/screenshots/*.png
103
+
89
104
  # Video files (E2E recordings, demo outputs - all regenerated)
90
105
  *.webm
91
106
  *.mp4
@@ -98,8 +113,9 @@ e2e/e2e/.auth/
98
113
  *.temp
99
114
  .cache/
100
115
 
101
- # Claude Code (local configuration and session files)
102
- .claude/
116
+ # Claude Code config (ignore all except dispatch context)
117
+ .claude/*
118
+ !.claude/dispatch-context.md
103
119
  .agents/
104
120
  claude-*.md
105
121
 
@@ -142,4 +158,21 @@ marketing/video/public/audio/tts_*.mp3
142
158
  reports/
143
159
  *.pdf
144
160
 
145
- DEPLOY_STHREE.md
161
+ DEPLOY_STHREE.md
162
+ # Lab — local secrets (never commit)
163
+ scripts/lab/.lab-env.local
164
+ scripts/lab/.deploy-aci-secret-key
165
+ scripts/lab/.deploy-aci-mi-principal-id
166
+ scripts/lab/.deploy-cae-secret-key
167
+ scripts/lab/.deploy-cae-mi-principal-id
168
+ scripts/lab/.deploy-aci-workdir/
169
+ scripts/lab/.deploy-aci-private-ip
170
+ scripts/lab/.deploy-cf-tunnel-id
171
+ scripts/lab/.deploy-cf-tunnel-token
172
+ scripts/lab/.deploy-cf-access-app-id
173
+ scripts/lab/.deploy-cae-fqdn
174
+ scripts/lab/.deploy-cae-workdir/
175
+ scripts/lab/.cf-origin-certs/
176
+ scripts/lab/.db-password-*.backup
177
+ scripts/lab/.deploy-sso-secret
178
+ scripts/lab/.cloud-creds/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: certifyclouds
3
- Version: 1.2.2
3
+ Version: 1.3.3
4
4
  Summary: Scan Azure Key Vaults for expiring secrets, certificates, and keys
5
5
  Project-URL: Homepage, https://certifyclouds.com/scanner
6
6
  Project-URL: Documentation, https://docs.certifyclouds.com/scanner
@@ -24,20 +24,20 @@ Classifier: Programming Language :: Python :: 3.13
24
24
  Classifier: Topic :: Security
25
25
  Classifier: Topic :: System :: Systems Administration
26
26
  Requires-Python: >=3.9
27
- Requires-Dist: azure-core>=1.30
27
+ Requires-Dist: azure-core>=1.38.0
28
28
  Requires-Dist: azure-identity>=1.20
29
29
  Requires-Dist: azure-keyvault-certificates>=4.9
30
30
  Requires-Dist: azure-keyvault-keys>=4.10
31
31
  Requires-Dist: azure-keyvault-secrets>=4.9
32
- Requires-Dist: azure-mgmt-keyvault>=13.0
32
+ Requires-Dist: azure-mgmt-keyvault>=14.0.1
33
33
  Requires-Dist: azure-mgmt-resource>=24.0
34
34
  Requires-Dist: click>=8.0
35
35
  Requires-Dist: httpx>=0.27
36
- Requires-Dist: rich>=13.0
36
+ Requires-Dist: rich>=15.0
37
37
  Requires-Dist: tenacity>=9.0
38
38
  Provides-Extra: dev
39
39
  Requires-Dist: pytest-mock>=3.10; extra == 'dev'
40
- Requires-Dist: pytest>=7.0; extra == 'dev'
40
+ Requires-Dist: pytest>=9.0.3; extra == 'dev'
41
41
  Description-Content-Type: text/markdown
42
42
 
43
43
  # certifyclouds
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "certifyclouds"
3
- version = "1.2.2"
3
+ version = "1.3.3"
4
4
  description = "Scan Azure Key Vaults for expiring secrets, certificates, and keys"
5
5
  readme = "README.md"
6
6
  license = { text = "Apache-2.0" }
@@ -27,20 +27,20 @@ classifiers = [
27
27
  dependencies = [
28
28
  "azure-identity>=1.20",
29
29
  "azure-mgmt-resource>=24.0",
30
- "azure-mgmt-keyvault>=13.0",
30
+ "azure-mgmt-keyvault>=14.0.1",
31
31
  "azure-keyvault-secrets>=4.9",
32
32
  "azure-keyvault-certificates>=4.9",
33
33
  "azure-keyvault-keys>=4.10",
34
- "azure-core>=1.30",
34
+ "azure-core>=1.38.0",
35
35
  "tenacity>=9.0",
36
36
  "click>=8.0",
37
- "rich>=13.0",
37
+ "rich>=15.0",
38
38
  "httpx>=0.27",
39
39
  ]
40
40
 
41
41
  [project.optional-dependencies]
42
42
  dev = [
43
- "pytest>=7.0",
43
+ "pytest>=9.0.3",
44
44
  "pytest-mock>=3.10",
45
45
  ]
46
46
 
@@ -1,3 +1,3 @@
1
1
  """CertifyClouds Scanner — scan Azure Key Vaults for expiring secrets, certificates, and keys."""
2
2
 
3
- __version__ = "1.2.2"
3
+ __version__ = "1.3.3"
@@ -40,6 +40,9 @@ def analyze(results: dict[str, Any]) -> list[dict[str, Any]]:
40
40
  for cert in vault.get("certificates", []):
41
41
  _check_asset_expiry(cert, "certificate", vault_name, sub_name, now, findings)
42
42
 
43
+ for key in vault.get("keys", []):
44
+ _check_asset_expiry(key, "key", vault_name, sub_name, now, findings)
45
+
43
46
  # Sort by severity
44
47
  findings.sort(key=lambda f: SEVERITY_ORDER.get(f["severity"], 99))
45
48
  return findings
File without changes
File without changes