3 ms·
GitHub (Actions) is simply not built to support monorepos. Square peg in a round hole and all that. We've opted for using `meta` to simulate monorepos, while be
by androa 2y ago
GitHub (Actions) is simply not built to support monorepos. Square peg in a round hole and all that. We've opted for using `meta` to simulate monorepos, while being able to use GitHub Actions without too much downsides.
- Imustaskforhelp 2y agohey could you please share the`meta` tool you mentioned , sounds interesting ! couldn't find it on internet [skill issue]
- joshka 2y agoGuessing it's https://github.com/mateodelnorte/meta https://github.com/mateodelnorte/meta googlefu "meta github repo"
- Imustaskforhelp 2y agohey thanks! definitely interesting! I do wonder if this really solves the author problem because by the looks of it , you just have to run meta command and it would run over each of the sub directory. While at the same time , I think I like it because this is what I think people refer to as "modular monolith" Combining this with nats https://nats.io/ https://nats.io/ (hey if you don't want it to be over the network , you could use nats with the memory model of your application itself to reduce any overhead) and essentially just get yourself a really modular monolith in which you can then seperate things selectively (ahem , microservices) afterwards rather easily.
- HumanOstrich 2y agoModular monolith refers to the architecture of your application[1]. It's a different concept from "monorepo", although they can be used together. I'm not sure what NATS has to do with anything in this post or discussion. Also, a modular monolith is almost the antithesis of microservices. [1]: https://www.thoughtworks.com/en-us/insights/blog/microservices/modular-monolith-better-way-build-software https://www.thoughtworks.com/en-us/insights/blog/microservic...
- justin_oaks 2y agoWhich makes me wonder if there is a way to simulate multiple repos while maintaining a mono repo. Or mirror a portion of a monorepo as a single repo. Obviously this would be a real pain to implement just to fix the underlying problem, but it's an interesting (awful) solution