This message was imported from the Ruby/Rails Modularity Slack server. Find more info in the import thread.
Message originally sent by slack user U71TVUGH1JK
I am trying to get buy-in at my org to use packwerk. We have a fairly large monolith, but also have a newer product within it that would benefit from getting its own CI/CD process. One of the questions I got from mgmt was if we could eventually containerize this new product with packwerk.
Has anyone gone down this path and used packwerk to first isolate a product into a pack and eventually split it off to a new containerized app? I get that part of the beauty of packwerk is not having to break things off the monolith. But is continuous deployment for an individual pack still achievable while using the the big-rails packwerk architecture concepts? sorry if this has been discussed or I’m missing something.
One of the “pros” we identified with a modular monolith in general (regardless of using packwerk… could also have used engines/gems approach in Rails) was the possibility of breaking out subsystems (packs) into separate processes (containers or microservices or whatever) should the need arise… being judicious with “need”… but org structure is one reason that might justify the costs of a distributed system in that manner.
AFAIK it’s something a few of us want to do (including myself), but I’m not aware of any success stories, mostly because refactoring large codebases into packs is a pretty long process. It should work in theory though. There’s a slightly relevant discussion here https://github.com/rubyatscale/packs-rails/discussions/53