repositories
Creates, updates, deletes or gets a repository resource or lists repositories in a region
Overview
| Name | repositories |
| Type | Resource |
| Description | The resource schema to create a CodeArtifact repository. |
| Id | awscc.codeartifact.repositories |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
repository_name | string | The name of the repository. |
name | string | The name of the repository. This is used for GetAtt |
domain_name | string | The name of the domain that contains the repository. |
domain_owner | string | The 12-digit account ID of the AWS account that owns the domain. |
description | string | A text description of the repository. |
arn | string | The ARN of the repository. |
external_connections | array | A list of external connections associated with the repository. |
upstreams | array | A list of upstream repositories associated with the repository. |
permissions_policy_document | object | The access control resource policy on the provided repository. |
tags | array | An array of key-value pairs to apply to this resource. |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
arn | string | The ARN of the repository. |
region | string | AWS region. |
For more information, see AWS::CodeArtifact::Repository.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | repositories | INSERT | RepositoryName, DomainName, region |
delete_resource | repositories | DELETE | Identifier, region |
update_resource | repositories | UPDATE | Identifier, PatchDocument, region |
list_resources | repositories_list_only | SELECT | region |
get_resource | repositories | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual repository.
SELECT
region,
repository_name,
name,
domain_name,
domain_owner,
description,
arn,
external_connections,
upstreams,
permissions_policy_document,
tags
FROM awscc.codeartifact.repositories
WHERE
region = 'us-east-1' AND
Identifier = '{{ arn }}';
Lists all repositories in a region.
SELECT
region,
arn
FROM awscc.codeartifact.repositories_list_only
WHERE
region = 'us-east-1';
INSERT example
Use the following StackQL query and manifest file to create a new repository resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.codeartifact.repositories (
RepositoryName,
DomainName,
region
)
SELECT
'{{ repository_name }}',
'{{ domain_name }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.codeartifact.repositories (
RepositoryName,
DomainName,
Description,
ExternalConnections,
Upstreams,
PermissionsPolicyDocument,
Tags,
region
)
SELECT
'{{ repository_name }}',
'{{ domain_name }}',
'{{ description }}',
'{{ external_connections }}',
'{{ upstreams }}',
'{{ permissions_policy_document }}',
'{{ tags }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: repository
props:
- name: repository_name
value: '{{ repository_name }}'
- name: domain_name
value: '{{ domain_name }}'
- name: description
value: '{{ description }}'
- name: external_connections
value:
- '{{ external_connections[0] }}'
- name: upstreams
value:
- '{{ upstreams[0] }}'
- name: permissions_policy_document
value: {}
- name: tags
value:
- key: '{{ key }}'
value: '{{ value }}'
UPDATE example
Use the following StackQL query and manifest file to update a repository resource, using stack-deploy.
/*+ update */
UPDATE awscc.codeartifact.repositories
SET PatchDocument = string('{{ {
"Description": description,
"ExternalConnections": external_connections,
"Upstreams": upstreams,
"PermissionsPolicyDocument": permissions_policy_document,
"Tags": tags
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ arn }}';
DELETE example
/*+ delete */
DELETE FROM awscc.codeartifact.repositories
WHERE
Identifier = '{{ arn }}' AND
region = 'us-east-1';
Permissions
To operate on the repositories resource, the following permissions are required:
- Create
- Read
- Update
- Delete
- List
codeartifact:CreateRepository,
codeartifact:DescribeRepository,
codeartifact:PutRepositoryPermissionsPolicy,
codeartifact:GetRepositoryPermissionsPolicy,
codeartifact:AssociateExternalConnection,
codeartifact:AssociateWithDownstreamRepository,
codeartifact:TagResource,
codeartifact:ListTagsForResource
codeartifact:DescribeRepository,
codeartifact:GetRepositoryPermissionsPolicy,
codeartifact:ListTagsForResource
codeartifact:PutRepositoryPermissionsPolicy,
codeartifact:GetRepositoryPermissionsPolicy,
codeartifact:DeleteRepositoryPermissionsPolicy,
codeartifact:AssociateExternalConnection,
codeartifact:DisassociateExternalConnection,
codeartifact:UpdateRepository,
codeartifact:DescribeRepository,
codeartifact:AssociateWithDownstreamRepository,
codeartifact:TagResource,
codeartifact:UntagResource,
codeartifact:ListTagsForResource
codeartifact:DeleteRepository,
codeartifact:DescribeRepository
codeartifact:ListRepositories