Skip to content

Commit d168242

Browse files
authored
Merge pull request #374 from jdno/crates-io-aws-accounts
Create AWS accounts for crates.io
2 parents 4e44aeb + 33243e9 commit d168242

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed

terragrunt/modules/aws-organization/accounts.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,16 @@ resource "aws_organizations_account" "legacy" {
1212
1313
}
1414

15+
resource "aws_organizations_account" "crates_io_staging" {
16+
name = "crates-io-staging"
17+
18+
}
19+
20+
resource "aws_organizations_account" "crates_io_prod" {
21+
name = "crates-io-prod"
22+
23+
}
24+
1525
resource "aws_organizations_account" "docs_rs_staging" {
1626
name = "docs-rs-staging"
1727

terragrunt/modules/aws-organization/groups.tf

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,13 @@ resource "aws_identitystore_group" "billing" {
2828
description = "People with access to the billing portal"
2929
}
3030

31+
resource "aws_identitystore_group" "crates_io" {
32+
identity_store_id = local.identity_store_id
33+
34+
display_name = "crates-io"
35+
description = "The crates.io team"
36+
}
37+
3138
# The different permission sets a group may have assigned to it
3239

3340
resource "aws_ssoadmin_permission_set" "administrator_access" {
@@ -112,6 +119,30 @@ locals {
112119
permissions : [aws_ssoadmin_permission_set.view_only_access] }
113120
]
114121
},
122+
# crates-io Staging
123+
{
124+
account : aws_organizations_account.crates_io_staging,
125+
groups : [
126+
{ group : aws_identitystore_group.infra-admins,
127+
permissions : [aws_ssoadmin_permission_set.view_only_access, aws_ssoadmin_permission_set.administrator_access] },
128+
{ group : aws_identitystore_group.infra,
129+
permissions : [aws_ssoadmin_permission_set.view_only_access, aws_ssoadmin_permission_set.administrator_access] },
130+
{ group : aws_identitystore_group.crates_io,
131+
permissions : [aws_ssoadmin_permission_set.view_only_access] },
132+
]
133+
},
134+
# crates-io Production
135+
{
136+
account : aws_organizations_account.crates_io_prod,
137+
groups : [
138+
{ group : aws_identitystore_group.infra-admins,
139+
permissions : [aws_ssoadmin_permission_set.view_only_access, aws_ssoadmin_permission_set.administrator_access] },
140+
{ group : aws_identitystore_group.infra,
141+
permissions : [aws_ssoadmin_permission_set.view_only_access] },
142+
{ group : aws_identitystore_group.crates_io,
143+
permissions : [aws_ssoadmin_permission_set.view_only_access] },
144+
]
145+
},
115146
# docs-rs Staging
116147
{
117148
account : aws_organizations_account.docs_rs_staging,

0 commit comments

Comments
 (0)