puls-dev 0.2.2 ā 0.2.4
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/README.md +13 -5
- package/dist/core/checker.js +6 -6
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
|
|
5
5
|
[Live Documentation](https://pulsdev.io/) | Discord: **pulsdev.io** ([Join](https://discord.gg/CjgRayuH))
|
|
6
6
|
|
|
7
|
+
> [!IMPORTANT]
|
|
8
|
+
> **Active Pre-1.0 Development**
|
|
9
|
+
> `pulsdev.io` is currently undergoing **active development**. While the framework features exhaustive 100% test coverage and strict production safety locks (such as dry-run planning and protected resource decorators), APIs and features are actively evolving.
|
|
10
|
+
> We are aggressively rolling out new resources and provider integrations. We welcome your feedback, bug reports, and contributions!
|
|
11
|
+
|
|
7
12
|
```typescript
|
|
8
13
|
@Deploy({ proxmox: CONFIG.STAGING })
|
|
9
14
|
class GameInfra extends Stack {
|
|
@@ -36,11 +41,14 @@ Running the same stack twice is always safe - existing resources are detected an
|
|
|
36
41
|
|
|
37
42
|
## Providers
|
|
38
43
|
|
|
39
|
-
| Provider | Resources |
|
|
40
|
-
|
|
41
|
-
| [
|
|
42
|
-
| [AWS](docs/providers/aws.md) | Route53, ACM (wildcard SSL), CloudFront, S3 |
|
|
43
|
-
| [
|
|
44
|
+
| Provider | Resources | Status |
|
|
45
|
+
|----------|-----------|--------|
|
|
46
|
+
| [Google Cloud Platform (GCP)](docs/providers/gcp.md) | Cloud Run, Cloud SQL, Secret Manager, Pub/Sub, Cloud DNS, IAM (Service Accounts & Bindings) | **Completed** |
|
|
47
|
+
| [AWS](docs/providers/aws.md) | Route53, ACM (wildcard SSL), CloudFront, S3 | **Completed** |
|
|
48
|
+
| [Firebase](docs/providers/firebase.md) | Hosting, Functions, Firestore (Indexes & Rules), Storage (Rules/CORS), Auth, Remote Config, App Check | **Completed** |
|
|
49
|
+
| [DigitalOcean](docs/providers/digitalocean.md) | Droplet, Domain, Firewall, Certificate, LoadBalancer | **Completed** |
|
|
50
|
+
| [Proxmox](docs/providers/proxmox.md) | VM (clone, cloud-init, provision, cluster-aware node selection, replace) | **Completed** |
|
|
51
|
+
|
|
44
52
|
|
|
45
53
|
---
|
|
46
54
|
|
package/dist/core/checker.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import "reflect-metadata";
|
|
2
2
|
import { Config } from "./config.js";
|
|
3
|
-
import { listProxmoxVMs } from "../providers/proxmox/list.js";
|
|
4
|
-
import { listDoResources } from "../providers/do/list.js";
|
|
5
|
-
import { listAwsResources } from "../providers/aws/list.js";
|
|
6
3
|
function clip(text, width) {
|
|
7
4
|
return text.length > width
|
|
8
5
|
? text.slice(0, width - 1) + "ā¦"
|
|
@@ -135,7 +132,8 @@ export class Checker {
|
|
|
135
132
|
const tasks = [];
|
|
136
133
|
console.log(`\nš Checking infrastructure...`);
|
|
137
134
|
if (cfg.providers.proxmox?.url && cfg.providers.proxmox?.tokenSecret) {
|
|
138
|
-
tasks.push(
|
|
135
|
+
tasks.push(import("../providers/proxmox/list.js")
|
|
136
|
+
.then((m) => m.listProxmoxVMs())
|
|
139
137
|
.then((inv) => {
|
|
140
138
|
result.proxmox = inv;
|
|
141
139
|
})
|
|
@@ -144,7 +142,8 @@ export class Checker {
|
|
|
144
142
|
}));
|
|
145
143
|
}
|
|
146
144
|
if (cfg.providers.do?.token) {
|
|
147
|
-
tasks.push(
|
|
145
|
+
tasks.push(import("../providers/do/list.js")
|
|
146
|
+
.then((m) => m.listDoResources())
|
|
148
147
|
.then((inv) => {
|
|
149
148
|
result.do = inv;
|
|
150
149
|
})
|
|
@@ -153,7 +152,8 @@ export class Checker {
|
|
|
153
152
|
}));
|
|
154
153
|
}
|
|
155
154
|
if (cfg.providers.aws?.region) {
|
|
156
|
-
tasks.push(
|
|
155
|
+
tasks.push(import("../providers/aws/list.js")
|
|
156
|
+
.then((m) => m.listAwsResources())
|
|
157
157
|
.then((inv) => {
|
|
158
158
|
result.aws = inv;
|
|
159
159
|
})
|