Aiming for Higher Productivity - CI/CD Build Automation for ZitaFTP Server
If you've been following my work then I'm sure you're wondering what's happening with ZitaFTP Server. It's been a while since the last release. Well, I took some time out round Easter to think about how things are going, where I'd like to go, and how to improve. I'll give you a ZitaFTP Server update later.
- I decided to get serious about achieving higher productivity. I want to get more done in less time so that I can deliver more to you (e.g., more regular ZitaFTP Server releases), while having time for my family and myself too. I'm a father now, so having time for family is important
The CI/CD Pipeline
- I've started setting up CI/CD for ZitaFTP Server to try to save time and speed up development
- CI/CD = Constant Integration/Constant Deployment. That's a fancy title for a system that automatically compiles the source-code every time changes are pushed to the source-code repository. It can also be programmed to run tests, and even build and deploy releases
- The new CI/CD pipeline currently does a full rebuild of both the AmigaOS and Windows versions, with more automation coming later
- I know immediately if I've broken anything, which makes it easier to fix because everything I just did is still in my head
- There's less need to switch back and forth between the different OS versions, because the automated builds will tell me if I broke anything for other OSes
- Releasing new versions is easier, because I can automate it
- I plan to automate releases. The script to build the AmigaOS installation package has already been converted from AmigaDOS to bash shell scripting for this purpose
- Writing release notes could probably also be automated, eliminating double-work of updating the release notes with the same details that I put in the git commit messages
- I'd like to add automated testing to catch even more problems as early as possible
- The end goal is faster progress, higher productivity, and more frequent software releases
Implementing the automation takes time, and will slow me down in the short-term. However, I expect it to pay off in the long-term; especially when I expand the number of platforms that ZitaFTP Server supports.
Post your comment