top | item 42578504

(no title)

crockeo | 1 year ago

Not Hakan, but I was working closely with him at the time. Lyft was on a microservice many-repo setup, and we did pin the version of golangci-lint.

I've found it's actually not so bad to do this kind of work across many repos, as long as you have the tooling to apply the same change to any number of codebases all at once. Our strategy was typically:

- Write an idempotent codemod to do an upgrade. This is easy as long as your configuration is in a declarative language.

- Regularly apply it or update it on all of the applicable repos.

- Merge upgrades incrementally until you've upgraded 100%.

discuss

order

peterldowns|1 year ago

Thanks for the insight, that makes sense. What tool did you use for codemods? And do you have any other advice for dealing with many (50+) repos?

hakann|1 year ago

Thanks crockeo! You are absolutely correct!