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

test(hcp): Define TF module for long-lived resources #5045

Merged
merged 2 commits into from
Sep 5, 2024
Merged

Conversation

moduli
Copy link
Collaborator

@moduli moduli commented Aug 26, 2024

This PR adds a Terraform module that creates resources for testing against a long-lived HCP cluster. Right now, the resources include those necessary to perform Session Recording, including a worker, storage bucket, and target. An internal TFC account is used to store the state.

https://hashicorp.atlassian.net/browse/ICU-14783

@moduli moduli added the pr/no-milestone Ignores the Milestone Check label Aug 26, 2024
Copy link
Member

@guygrigsby guygrigsby left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is awesome! Thanks for doing this.

Let me start by saying, I am not a TF expert at all. Not even close.

That being said, Is this for a single set of shared resources? It wasn't clear based on the ticket and it seems like it's kind of a mix of that and having the modules defined for external users spin up their own things. I don't think the former is suited for the Boundary community repo. We call out explicitly the hashicorp-qti org for TFC so that confused me a bit. Is the hope that other outside of HashiCorp would be able to use it too or that it maintains our set of long lived resources?

Maybe we need the modules defined publicly and our "test bed" of resources use those public modules in a private repo.

enos/ci/hcp-resources/.gitignore Show resolved Hide resolved
enos/ci/hcp-resources/main.tf Outdated Show resolved Hide resolved
enos/ci/hcp-resources/main.tf Outdated Show resolved Hide resolved
@moduli
Copy link
Collaborator Author

moduli commented Aug 29, 2024

That being said, Is this for a single set of shared resources? It wasn't clear based on the ticket and it seems like it's kind of a mix of that and having the modules defined for external users spin up their own things. I don't think the former is suited for the Boundary community repo. We call out explicitly the hashicorp-qti org for TFC so that confused me a bit. Is the hope that other outside of HashiCorp would be able to use it too or that it maintains our set of long lived resources?

Maybe we need the modules defined publicly and our "test bed" of resources use those public modules in a private repo.

@guygrigsby

  • This is intended to define a single set of shared resources for HCP testing.
  • The modules used here are not intended/designed for external use. They are used in our end-to-end testing. The idea was to borrow those same modules to set up the resources needed for our long-running tests.
  • We could eventually move towards a paradigm of having those modules in some public repository, but this was the simplest way to move forward with the initiative.

Thoughts?

@guygrigsby
Copy link
Member

@moduli that makes sense and was what I was hoping. I am on board.

@moduli moduli merged commit 30b999e into main Sep 5, 2024
62 of 64 checks passed
@moduli moduli deleted the moduli-hcp-tf branch September 5, 2024 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr/no-milestone Ignores the Milestone Check
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants