@ariestools/cli 0.1.16 → 0.1.17
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 +51 -11
- package/dist/bin/aries.mjs +94138 -253208
- package/dist/bin/daemons/chain-server.mjs +9862 -12
- package/dist/bin/daemons/dapp-server.mjs +55 -56
- package/dist/bin/daemons/datalake-dev.mjs +10282 -4342
- package/dist/node/datalake.mjs +7 -5
- package/dist/terraform/cluster-aws/cluster.tf +61 -0
- package/dist/terraform/cluster-aws/encryption.tofu.example +37 -0
- package/dist/terraform/cluster-aws/iam.tf +81 -0
- package/dist/terraform/cluster-aws/irsa_ebs_csi.tf +37 -0
- package/dist/terraform/cluster-aws/kubeconfig.tf +49 -0
- package/dist/terraform/cluster-aws/network.tf +108 -0
- package/dist/terraform/cluster-aws/nodegroup.tf +42 -0
- package/dist/terraform/cluster-aws/outputs.tf +80 -0
- package/dist/terraform/cluster-aws/providers.tf +7 -0
- package/dist/terraform/cluster-aws/terraform.tfvars.example +21 -0
- package/dist/terraform/cluster-aws/variables.tf +120 -0
- package/dist/terraform/cluster-aws/versions.tf +18 -0
- package/dist/terraform/cluster-azure/cluster.tf +83 -0
- package/dist/terraform/cluster-azure/encryption.tofu.example +37 -0
- package/dist/terraform/cluster-azure/identity.tf +9 -0
- package/dist/terraform/cluster-azure/kubeconfig.tf +18 -0
- package/dist/terraform/cluster-azure/network.tf +23 -0
- package/dist/terraform/cluster-azure/outputs.tf +69 -0
- package/dist/terraform/cluster-azure/providers.tf +16 -0
- package/dist/terraform/cluster-azure/terraform.tfvars.example +24 -0
- package/dist/terraform/cluster-azure/variables.tf +126 -0
- package/dist/terraform/cluster-azure/versions.tf +14 -0
- package/dist/terraform/cluster-gcp/cluster.tf +71 -0
- package/dist/terraform/cluster-gcp/encryption.tofu.example +35 -0
- package/dist/terraform/cluster-gcp/kubeconfig.tf +47 -0
- package/dist/terraform/cluster-gcp/network.tf +47 -0
- package/dist/terraform/cluster-gcp/outputs.tf +70 -0
- package/dist/terraform/cluster-gcp/providers.tf +14 -0
- package/dist/terraform/cluster-gcp/terraform.tfvars.example +17 -0
- package/dist/terraform/cluster-gcp/variables.tf +86 -0
- package/dist/terraform/cluster-gcp/versions.tf +14 -0
- package/dist/terraform/serverless-aws/alb.tf +127 -0
- package/dist/terraform/serverless-aws/database.tf +70 -0
- package/dist/terraform/serverless-aws/dns.tf +80 -0
- package/dist/terraform/serverless-aws/ecr.tf +63 -0
- package/dist/terraform/serverless-aws/ecs.tf +199 -0
- package/dist/terraform/serverless-aws/encryption.tofu.example +38 -0
- package/dist/terraform/serverless-aws/iam.tf +68 -0
- package/dist/terraform/serverless-aws/network.tf +190 -0
- package/dist/terraform/serverless-aws/outputs.tf +64 -0
- package/dist/terraform/serverless-aws/providers.tf +19 -0
- package/dist/terraform/serverless-aws/storage.tf +51 -0
- package/dist/terraform/serverless-aws/terraform.tfvars.example +19 -0
- package/dist/terraform/serverless-aws/variables.tf +151 -0
- package/dist/terraform/serverless-aws/versions.tf +14 -0
- package/package.json +22 -19
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
variable "region" {
|
|
2
|
+
type = string
|
|
3
|
+
description = "AWS region to deploy into."
|
|
4
|
+
default = "us-west-2"
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
variable "tfstate_passphrase" {
|
|
8
|
+
type = string
|
|
9
|
+
description = <<EOT
|
|
10
|
+
Passphrase for OpenTofu state encryption (PBKDF2 → AES-GCM). Leave empty
|
|
11
|
+
to leave state unencrypted (the default). To enable, copy
|
|
12
|
+
`encryption.tofu.example` to `encryption.tofu`
|
|
13
|
+
in the working dir, set this variable (or `TF_VAR_tfstate_passphrase`)
|
|
14
|
+
to at least 16 characters, and run `tofu init -reconfigure`. Minimum
|
|
15
|
+
length is enforced by the pbkdf2 key_provider.
|
|
16
|
+
EOT
|
|
17
|
+
default = ""
|
|
18
|
+
sensitive = true
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
variable "aws_profile" {
|
|
22
|
+
type = string
|
|
23
|
+
description = "Local AWS CLI profile Terraform should use. Must already be configured via `aws configure` or `aws sso login`."
|
|
24
|
+
default = "xylabs-datalake"
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
variable "environment" {
|
|
28
|
+
type = string
|
|
29
|
+
description = "Environment name (staging, prod, etc.). Goes into resource tags + names."
|
|
30
|
+
default = "staging"
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
variable "project" {
|
|
34
|
+
type = string
|
|
35
|
+
description = "Project name; goes into resource tags."
|
|
36
|
+
default = "aries-datalake"
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
variable "vpc_cidr" {
|
|
40
|
+
type = string
|
|
41
|
+
description = "CIDR block for the dedicated VPC. Must not overlap any existing VPC you intend to peer with."
|
|
42
|
+
default = "10.42.0.0/16"
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
variable "availability_zone_count" {
|
|
46
|
+
type = number
|
|
47
|
+
description = "Number of AZs to span (>= 2 required for the ALB)."
|
|
48
|
+
default = 2
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
variable "domain_name" {
|
|
52
|
+
type = string
|
|
53
|
+
description = "Apex domain that hosts api.<domain> and data.<domain>. Leave empty to skip Route53 + ACM and expose the ALB DNS name directly (useful for first-bootstrap)."
|
|
54
|
+
default = ""
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
variable "create_route53_zone" {
|
|
58
|
+
type = bool
|
|
59
|
+
description = "When true, Terraform creates the Route53 hosted zone for `domain_name`. When false, it looks up an existing zone by `domain_name`."
|
|
60
|
+
default = false
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
variable "db_instance_class" {
|
|
64
|
+
type = string
|
|
65
|
+
description = "RDS instance class. Default is the cheapest reasonable option for staging."
|
|
66
|
+
default = "db.t4g.micro"
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
variable "db_engine_version" {
|
|
70
|
+
type = string
|
|
71
|
+
description = "PostgreSQL version or version prefix. OpenTofu selects the latest regionally available match."
|
|
72
|
+
default = "16"
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
variable "db_allocated_storage" {
|
|
76
|
+
type = number
|
|
77
|
+
description = "Initial RDS storage in GB."
|
|
78
|
+
default = 20
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
variable "control_image" {
|
|
82
|
+
type = string
|
|
83
|
+
description = "Full ECR image URI for the control plane (including tag). Set after first `docker push` to the ECR repo this stack creates."
|
|
84
|
+
default = ""
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
variable "plane_image" {
|
|
88
|
+
type = string
|
|
89
|
+
description = "Full ECR image URI for the data plane (including tag). Set after first `docker push` to the ECR repo this stack creates."
|
|
90
|
+
default = ""
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
variable "control_desired_count" {
|
|
94
|
+
type = number
|
|
95
|
+
description = "Number of control-plane Fargate tasks."
|
|
96
|
+
default = 1
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
variable "plane_desired_count" {
|
|
100
|
+
type = number
|
|
101
|
+
description = "Number of shared data-plane Fargate tasks (small/medium tiers)."
|
|
102
|
+
default = 1
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
variable "control_task_cpu" {
|
|
106
|
+
type = number
|
|
107
|
+
description = "Fargate CPU units for the control plane (256 = 0.25 vCPU)."
|
|
108
|
+
default = 256
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
variable "control_task_memory" {
|
|
112
|
+
type = number
|
|
113
|
+
description = "Fargate memory MB for the control plane."
|
|
114
|
+
default = 512
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
variable "plane_task_cpu" {
|
|
118
|
+
type = number
|
|
119
|
+
description = "Fargate CPU units for the data plane."
|
|
120
|
+
default = 512
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
variable "plane_task_memory" {
|
|
124
|
+
type = number
|
|
125
|
+
description = "Fargate memory MB for the data plane."
|
|
126
|
+
default = 1024
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
variable "scope_tags" {
|
|
130
|
+
type = map(string)
|
|
131
|
+
description = "Tags applied to every resource via the AWS provider's default_tags. Populated by the `aries compute add --infra ...` flow with the infra-uid + managed-by tag set; left empty when the legacy `aries compute aws ...` commands invoke the module."
|
|
132
|
+
default = {}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
variable "create_ecr_repos" {
|
|
136
|
+
type = bool
|
|
137
|
+
description = "When true (default), the module provisions its own ECR repositories for the control + plane images. The infra-aware `aries compute add --kind serverless` flow passes false because ECR repos are managed by `aries infra images` at the infrastructure level instead. When false, `control_image` and `plane_image` must be set to full URIs."
|
|
138
|
+
default = true
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
locals {
|
|
142
|
+
name_prefix = "${var.project}-${var.environment}"
|
|
143
|
+
|
|
144
|
+
common_tags = merge({
|
|
145
|
+
Project = var.project
|
|
146
|
+
Environment = var.environment
|
|
147
|
+
ManagedBy = "terraform"
|
|
148
|
+
}, var.scope_tags)
|
|
149
|
+
|
|
150
|
+
has_domain = length(var.domain_name) > 0
|
|
151
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ariestools/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"description": "Aries Tools CLI - A suite of tools by Arie Trouw",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ariestools",
|
|
@@ -30,43 +30,46 @@
|
|
|
30
30
|
"dist/bin",
|
|
31
31
|
"dist/node",
|
|
32
32
|
"dist/plugins",
|
|
33
|
+
"dist/terraform",
|
|
33
34
|
"README.md"
|
|
34
35
|
],
|
|
35
36
|
"dependencies": {
|
|
36
37
|
"@opentelemetry/api": "~1.9.1",
|
|
37
38
|
"@xyo-network/archivist-lmdb": "~7.2.3",
|
|
38
39
|
"@xyo-network/sdk-protocol": "~7.2.3",
|
|
40
|
+
"@xyo-network/xl1-cli": "~5.0.4",
|
|
39
41
|
"async-mutex": "~0.5.0",
|
|
40
42
|
"ethers": "~6.17.0",
|
|
41
43
|
"pdq-wasm": "~0.3.9",
|
|
42
44
|
"s3rver": "~3.7.1",
|
|
43
45
|
"zod": "~4.4.3",
|
|
44
|
-
"@
|
|
45
|
-
"@
|
|
46
|
-
"@ariestools/aries-dapp-core": "~0.1.
|
|
46
|
+
"@ariestools/aries-dapp-serve": "~0.1.17",
|
|
47
|
+
"@xyo-network/wallet-xl1-cli": "~0.1.17",
|
|
48
|
+
"@ariestools/aries-dapp-core": "~0.1.17"
|
|
47
49
|
},
|
|
48
50
|
"devDependencies": {
|
|
49
|
-
"@ariestools/actor": "~1.
|
|
50
|
-
"@ariestools/actor-model": "~1.
|
|
51
|
-
"@ariestools/
|
|
52
|
-
"@ariestools/
|
|
53
|
-
"@ariestools/
|
|
54
|
-
"@
|
|
51
|
+
"@ariestools/actor": "~1.3.0",
|
|
52
|
+
"@ariestools/actor-model": "~1.3.0",
|
|
53
|
+
"@ariestools/cli-kit-daemon": "~1.2.3",
|
|
54
|
+
"@ariestools/sdk": "~8.1.8",
|
|
55
|
+
"@ariestools/toolchain": "~9.0.2",
|
|
56
|
+
"@ariestools/tsconfig": "~9.0.2",
|
|
57
|
+
"@types/node": "~26.2.0",
|
|
55
58
|
"@xyo-network/sdk": "~7.2.3",
|
|
56
|
-
"@xyo-network/xl1-sdk": "~5.0
|
|
57
|
-
"eslint": "~10.8.
|
|
58
|
-
"rolldown": "~1.2.
|
|
59
|
-
"tsx": "~4.23.
|
|
59
|
+
"@xyo-network/xl1-sdk": "~5.2.0",
|
|
60
|
+
"eslint": "~10.8.1",
|
|
61
|
+
"rolldown": "~1.2.3",
|
|
62
|
+
"tsx": "~4.23.12",
|
|
60
63
|
"typescript": "~6.0.3",
|
|
61
|
-
"vite": "~8.1
|
|
64
|
+
"vite": "~8.2.1",
|
|
62
65
|
"vitest": "~4.1.10",
|
|
63
66
|
"yargs": "~18.1.0",
|
|
64
|
-
"@ariestools/aries-datalake-client": "~0.1.
|
|
65
|
-
"@ariestools/aries-cli-core": "~0.1.
|
|
66
|
-
"@ariestools/cli-lib": "~0.1.
|
|
67
|
+
"@ariestools/aries-datalake-client": "~0.1.17",
|
|
68
|
+
"@ariestools/aries-cli-core": "~0.1.17",
|
|
69
|
+
"@ariestools/cli-lib": "~0.1.17"
|
|
67
70
|
},
|
|
68
71
|
"engines": {
|
|
69
|
-
"node": ">=
|
|
72
|
+
"node": ">=24"
|
|
70
73
|
},
|
|
71
74
|
"engineStrict": true,
|
|
72
75
|
"publishConfig": {
|