Skip to content

AWS targets and configuration

The target types and configuration properties contributed by the @fabr-build/aws plugin (plugin @fabr-build/aws;), which reads from and publishes to AWS services. Core definitions (like sync) are in Core targets and configuration.

This page is generated from fabr list-all, so it never drifts from the code.

Property Default Description
AWS_REPOSITORY_TYPES (unset) The repository type each AWS service or CodeArtifact format is read and published as, by AWS’s name for it: a type the plugin for that kind of package defines. @aws:ecr:… is an oci_repository, and @aws:codeartifact:<domain>:<repository>:npm:… an npm_repository.
targetdef aws_account {
profile = STRING;
region = STRING;
account_id = STRING;
endpoint = STRING;
}

An AWS account, as a given role and region: the credentials requests to its services are signed with, and where they go. A name under it starts with the service, so @aws:s3:acme-models:v3/model.bin is that object in the acme-models bucket, named v3/model.bin. Credentials are found as the AWS CLI finds them (environment, ~/.aws profiles, SSO, web identity, instance roles). fabr declares @aws for you; declaring it yourself chooses the profile:

aws_account @aws { profile = build; }
Property Type Required Description
profile STRING The ~/.aws/config profile whose credentials are used. By default, the one the AWS CLI would use (AWS_PROFILE, else default).
region STRING The region of the account’s regional services, us-east-1 where it is not set. S3 finds each bucket’s region for itself.
account_id STRING The account’s 12-digit ID. Where it is set, the account’s ECR registry is found without asking AWS, so images already cached need no network.
endpoint STRING The URL every service of the account is reached at, in place of AWS’s own: an S3-compatible store such as MinIO or LocalStack.

Ready-made targets declared by these libraries, usable by name in any project.

aws_account @aws {
}

The AWS account the default credentials sign in to.