Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: add support for execution role deployment #23

Merged
merged 5 commits into from
May 9, 2023

Conversation

ericwestfall
Copy link
Contributor

This change introduces a new deploy top-level project directory that contains parameterized CloudFormation templates that can be used to deploy the required Starfleet execution roles.

The following CloudFormation templates are included:

The starfleet-execution-role-stackset.yml template supports deployment through CloudFormation StackSets and allows users to target deployment to all member accounts in an AWS Organization or specific targets (e.g. OUs, accounts, etc.).

The starfleet-execution-role-org-management.yml template is intended to be deployed as a standard CloudFormation Stack in the organization management account. The template creates a role for the Starfleet Account Index Generator and a standard Starfleet Worker execution role.

Both templates enforce strict input checking for all parameters and implement least-privilege policies. Lastly, this change includes new tox environments to check CloudFormation templates for linting and security misconfigurations.

ericwestfall and others added 3 commits May 4, 2023 17:44
This change introduces a new `deploy` top-level project directory
that contains parameterized CloudFormation templates that can be
used to deploy the required Starfleet execution roles.

The following CloudFormation templates are included:

The `starfleet-execution-role-stackset.yml` template supports
deployment through CloudFormation StackSets and allows users
to target deployment to all member accounts in an AWS Organization
or specific targets (e.g. OUs, accounts, etc.).

The `starfleet-execution-role-org-management.yml` template is
intended to be deployed as a standard CloudFormation Stack in the
organization management account. The template creates a role for
the Starfleet Account Index Generator and a standard Starfleet
Worker execution role.

Both templates enforce strict input checking for all parameters and
implement least-privilege policies. Lastly, this change includes
new `tox` environments to check CloudFormation templates for linting
and security misconfigurations.
@mikegrima mikegrima self-requested a review May 5, 2023 02:20
@mikegrima
Copy link
Contributor

There seems to be a regression with:

boto3==1.26.127
botocore==1.29.127

That's very strange that it would break SQS...

@mikegrima
Copy link
Contributor

This is the issue: getmoto/moto#6286

@mikegrima
Copy link
Contributor

@ericwestfall in the meantime, let's pin to the older versions of boto3 and botocore in the requirements.txt file:

boto3==1.26.126
botocore==1.29.126

@ericwestfall
Copy link
Contributor Author

@ericwestfall in the meantime, let's pin to the older versions of boto3 and botocore in the requirements.txt file:

boto3==1.26.126
botocore==1.29.126

The underlying change in botocore that caused this regression has been rolled back in boto/botocore#2931. Looks like we can safely pin to the latest versions at this stage.

@mikegrima
Copy link
Contributor

LGTM. The next step will be to update the docs to reference how to use the CF templates for the role.

@mikegrima mikegrima merged commit c565f6c into gemini-oss:main May 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants