I would like to provide an overview of the upcoming modifications that will be implemented to our release principle in 2024.
Portainer has experienced remarkable success and customer adoption since our inception. The use cases and deployment scenarios for Portainer have been truly impressive, and the criticality level continues to grow. The increased adoption of our software has prompted us to reconsider our development and release processes. We aim to guarantee top-notch quality while aligning with our customers' expectations for product updates. In doing so, we ensure a smooth and effortless experience that our customers expect.
What has our release principle been thus far?
Up until now, our product release approach has followed the mantra of "ship fast, and ship often." This strategy has enabled us to innovate rapidly and address bugs along the way, knowing that the next version is always on the horizon. While this works wonderfully when users embrace the latest updates and our software is not mission-critical, issues arise when these assumptions don't hold.
What are the shortcomings of our current release approach?
When we prioritize fast shipping without considering the adoption rate of our customers, it can lead to support issues. Additionally, the inherent risk of breaking things when shipping quickly is typically mitigated by the ability to release fixes promptly. However, as our product has expanded its capabilities, our confidence in ensuring the stability of critical deployments through comprehensive testing of every feature, old and new, has diminished. To put it plainly, we require a much deeper level of regression testing, which is challenging to achieve with our current rapid-release schedule.
In preparation for 2024, we have decided to revise our approach to product releases.
In the world of open-source software (OSS), it is a prevalent practice to release a product in both Short Term Support (STS) and Long Term Support (LTS) versions. This approach allows for better support and maintenance management, catering to different user needs and preferences. STS releases are characterized as versions that undergo feature testing. They may include features that could potentially cause regressions and undergo limited regression testing. On the other hand, LTS versions differ because they do not contain new features and undergo comprehensive regression testing.
Looking ahead to 2024, our plan for Portainer is to adopt this model.
How will this new release principle impact you?
- We are introducing a new tag,
:LTS, for our container images. This tag will always point to the latest Portainer version designated as LTS (Long-Term Support). Additionally, we will point the
:latesttag to the latest LTS image (although it's not recommended to use the
:latesttag as it goes against best practices). If you prefer to use specific image versions, such as
portainer/portainer-ee:2.19.4, make sure to review the release notes as we will now indicate whether a release is considered LTS or not.
- According to the new definition, Portainer 2.19.x is now classified as "Short Term Support." The upcoming release of Portainer 2.20.0 will also fall under this category. Our first "Long Term Support" release will be Portainer 2.21, which will be based on version 2.20. We are currently undergoing regression testing and allowing ample time to address any regressions that may arise.
- If your Portainer deployments are crucial to your workflows, it is advisable to embrace the LTS versions exclusively. These versions undergo comprehensive end-to-end regression tests, ensuring their reliability and stability.
- If you appreciate quick feature innovation and are willing to tolerate occasional bugs, feel free to utilize the version tags of your preference. However, it is important to note that there may be regressions, so it is advisable to always take a complete backup of Portainer before upgrading. This ensures the preservation of your data and the smooth functioning of your system.
What advantages will you gain from this new release principle?
We are confident that this change will greatly benefit our valued customers by allowing them to choose their preferred release stream. Whether you seek the latest and greatest features or rock-solid reliability, we have you covered. Your needs and preferences matter to us, and we strive to deliver the best experience tailored to you.
Watch for Portainer 2.20 in the first quarter of 2024, followed by the 2.21 LTS version in the second quarter.