letsencrypt / letsencrypt/boulder
Remove fallback code and require SAReadOnlyService once it's in Prod crl-updater/storer configs
Open
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 5.8k
- Forks
- 649
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 24
Description
Once production has been running with saReadOnlyService set in the crl-storer config and checkFreshness: true in the crl-updater config:
Promote:
-
sa/db: move theissuerID_shardIdx_revokedDate_idxindex onrevokedCertificatesfrom01-boulder_sa_next.sqlinto01-boulder_sa.sql -
test/config: promote fromtest/config-nextthe crl-storersaReadOnlyServiceblock, the crl-updatercheckFreshnessandthisUpdateBackdatesettings, and thecrl-storer.boulderentry in the SA'ssa.StorageAuthorityReadOnlyallowlist
Remove:
-
cmd/crl-updater/main.go: make the 5-minutethisUpdateBackdatedefault unconditional -
crl/updater/updater.go: make the freshness check unconditional and remove thefreshnessCheckfield -
cmd/crl-storer/main.go: makeSAReadOnlyServicerequired and drop the conditional client construction -
crl/storer/storer.go: remove the nil check aroundcheckRemovedEntries -
crl/updater/updater_test.goandcrl/storer/storer_test.go: delete the freshness-check-disabled and no-read-only-SA test cases
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
First verify that production has run with saReadOnlyService and checkFreshness enabled. Review the listed SQL migration, test/config and test/config-next entries, then inspect the named Go files and tests for fallback paths and disabled-case coverage. Done means the promoted settings and index are active, fallback code is removed, and the affected updater and storer tests pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, sql
- Domain
- backend, databases, devops
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 62/100