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

Remove ca-a and ca-b distinction in test configs #7238

Merged
merged 3 commits into from
Jan 8, 2024

Conversation

pgporada
Copy link
Member

@pgporada pgporada commented Jan 3, 2024

Fixes #7187

@pgporada pgporada requested a review from a team as a code owner January 3, 2024 04:12
@pgporada pgporada requested a review from jsha January 3, 2024 04:12
Copy link
Contributor

github-actions bot commented Jan 3, 2024

@pgporada, this PR appears to contain configuration changes. Please ensure that a corresponding deployment ticket has been filed with the new configuration values.

@pgporada
Copy link
Member Author

pgporada commented Jan 3, 2024

No config changes are necessary. The bot was triggered due to me renaming and removing configs.

Copy link
Contributor

@jsha jsha left a comment

Choose a reason for hiding this comment

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

Nice, thanks for working on this.

We do still want to run two separate boulder-ca instances. We just want them to use a single config file. That means the changes to config.hcl are a little wrong. I'm actually not sure why we have [ca-a,ca-b] in there in addition to [ca1, ca2]. But we want only the latter.

Also, in startservers.py we should still have two stanzas to run boulder-ca instances.

@pgporada pgporada requested review from jsha and a team January 8, 2024 15:52
@pgporada
Copy link
Member Author

pgporada commented Jan 8, 2024

I'm certain that we have [ca-a, ca-b] in addition to [ca-1, ca-2] because we want ca.service.consul to resolve both CAs in addition to being able to target individual CAs with ca1.service.consul and ca2.service.consul. The docs state:

Name: Required value that specifies a name for the service. We recommend using valid DNS labels for service definition names for compatibility with external DNSs. The value for this parameter is used as the ID if the id parameter is not specified.

ID: Specifies an ID for the service. Services on the same node must have unique IDs. We recommend specifying unique values if the default name conflicts with other services.

The doc description for Name is a bit cryptic for me, but the consul web UI shows me exactly what I expected to see.
image

Copy link
Contributor

@aarongable aarongable left a comment

Choose a reason for hiding this comment

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

It looks like https://github.com/letsencrypt/boulder/blob/main/test/consul/README.md doesn't fully spell out the distinction between the "foo-a/b" and "foo1/2" stanzas in the consul config file, so it might be nice to make that documentation more explicit. But that doesn't need to be part of this PR, LGTM as-is.

@jsha jsha merged commit 2e951b0 into main Jan 8, 2024
19 checks passed
@jsha jsha deleted the my-favorite-cas-are-ca1-and-caa branch January 8, 2024 21:19
jsha pushed a commit that referenced this pull request Jan 9, 2024
While working on #7238, I dug
into why the consul services config has, for example, `[ca-a, ca-b]` in
addition to `[ca1, ca2]`. Boulder test configs use `ca.service.consul`
which will return both CAs (`[ca-a, ca-b]`). For `[ca1, ca2]` though, a
grpc load balancing [integration
test](https://github.com/letsencrypt/boulder/blob/a55bf19ea062febc94b5054a004e447aa5b3a6bd/test/integration-test.py#L121-L143)
individually targets services such as to verify that each backend is
working correctly.
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.

test: remove ca-a, ca-b distinction in test configs
3 participants