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

AWS CI pipeline #349

Draft
wants to merge 16 commits into
base: main
Choose a base branch
from
Draft

AWS CI pipeline #349

wants to merge 16 commits into from

Conversation

phbnf
Copy link
Contributor

@phbnf phbnf commented Dec 2, 2024

TODO - before sending it for a review:

  • setup the right permission for the trillian-tessera acount
  • update the repository and branches referenced in the workflow file

Towards #312.

This PR introduces a CI pipeline for AWS Tessera running on GitHub actions.

On every push to main, a GitHub action:

  1. authenticates with the trillian-tessera AWS account using secret keys stored on GitHub
  2. builds the conformance and hammer docker images
  3. pushes them to a container registry on AWS
  4. brings down old ci environments if need be
  5. generates Tessera keys
  6. brings up a new ci environment with:
    • an Aurora RDS DB
    • an S3 bucket
    • an ECS cluster
    • an ECS Fargate service running multiple instances of the conformance binary
    • it defines (but does not launch) an ECS Fargate hammer task
  7. launches the hammer task against the conformance service, and waits for it to return
  8. brings down the full task

The whole process takes around 30 minutes to complete, mostly since RDS databases take between 5 to 10 minutes to be brought up and down. Here's an example run. A concurrency blocks prevents two workflows to run simultaneously.

@phbnf phbnf requested a review from AlCutter December 2, 2024 12:25
@phbnf phbnf added the enhancement New feature or request label Dec 2, 2024
@phbnf phbnf added this to the alpha milestone Dec 2, 2024
@phbnf phbnf linked an issue Dec 2, 2024 that may be closed by this pull request
9 tasks
@phbnf phbnf force-pushed the integration branch 2 times, most recently from 2798a32 to 63a1171 Compare December 2, 2024 16:43
@phbnf phbnf marked this pull request as ready for review December 2, 2024 17:25
@phbnf phbnf marked this pull request as draft December 2, 2024 17:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

CI setup for AWS
2 participants