kartoza/osgs

Migrate from makefile

Opened this issue · 0 comments

Makefile was a great way to get this going, but I think the +2000 LOC for declarative interconnected operations have run their course. As someone not intimately familiar with each operations it's looking a bit like pasta, and integrating with other services is a challenge.

@timlinux has already mentioned this move, but it seems that we're still investing a significant amount of effort into extending the make operations rather than pushing to perform the migration.

My feeling is that we should migrate to click, a CLI creation project for python. The primary reason for this is it's integration with flask for simple front-end applications such as osgs admin etc.

This would make it possible to keep things declarative while still splitting up operations into more manageable chunks, and allow a lot more flexibility. If needed, make can always call the click operation, although I have my doubts that it's necessary, but it may be useful to manage the appropriate environments. If necessary I'm sure it can be bundled as a binary.

Not sure of the best approach to manage this though. In theory it could be handled incrementally, by managing a different feature branch, then the click operations could slowly be added to the make config before replacing it completely. Alternatively it could be done in one great refactor, but that would require a significant dedication of resources.