bucket
Object storage that blocks public access.
Object storage that blocks public access. Its name is made globally unique for you.
ackee.ack
ackee 1project "shop" {cloud = "aws"region = "us-east-1"}service "web" {image = "public.ecr.aws/nginx/nginx:latest"port = 80}bucket "uploads" {versioning = true}connect env "web" -> "uploads"connect iam "web" -> "uploads"
Fields
| Field | Takes | Meaning |
|---|---|---|
| versioning | true | false default true | Keep earlier versions of objects when they are overwritten or deleted. |
Any other field is refused (AK204), and the error names the exact type to declare with node for the setting you wanted.
What it becomes
| Cloud | Becomes |
|---|---|
| AWS | An S3 bucket. |
| Google Cloud | A Cloud Storage bucket with uniform access. |
| Azure | A storage account with one blob container. |
Joins the shared network net: Azure only — every Azure resource lives in the network's resource group.
What a connection hands over
An env connection to a bucket gives the consumer these variables, each prefixed by the bucket's name in upper case — bucket "orders" gives ORDERS_…:
| Cloud | Variables |
|---|---|
| AWS | _BUCKET, _REGION |
| Google Cloud | _BUCKET, _REGION |
| Azure | _ACCOUNT, _CONTAINER, _URL |
Notes
- Reading and writing objects also needs
connect iamfrom the consumer to the bucket;envonly says where it is. - Removing a bucket from the file destroys it, and approving that plan asks you to type its name.