2020-05-01 - Road to Helm 3 and v1
/v2
Hi all! It's been a while since we've done a release of Fabrikate and I know
that many of you are eager/kean to know updates/road-map/status of the project.
Know that we have some very exciting things in-flight and are eager to move the
project to a v1
and v2
(more on why 2 releases below).
General Updates
Migration to GitFlow branching model
We have decided to migrate to a GitFlow branching model. This is to alleviate some of the migration pains that we I will delve into a bit down below.
The main takeaways for this migrations:
- If you clone Fabrikate,
develop
is the the default branch. develop
is now considered the mainline branch -- All PRs should be made to that branch.- We are also going to maintain a
helm2
branch (more on that below). This is branch will only receive bug-fixes and high priority features. master
will now only contain cut releases off ofdevelop
.
Helm 3 Support
One of the major changes in dependencies since the project started was Helm's
upgrade from v2 to v3 and you might have noticed that we recently merged
Helm 3 support (special
thanks @michaelperel) into develop
. We are keen to cut a release including
this, but are awaiting an update in the
Bedrock sister project to add
SemVer pinning of Fabrikate
to one of the core scripts. Expect this to be unblocked in the coming weeks.
Once this is unblocked, we will maintain Helm 3 support in v2.x.x
and
Helm 2 support in v1.x.x
.
Release v1 and v2
As alluded to above, we will maintain 2 versions of Fabrikate:
Fabrikate | Branch | Helm | Support |
---|---|---|---|
v1 |
develop |
v2 |
Bug-fixes and high priority features (all fixes/features here will also be included in v2 ) |
v2 |
helm2 |
v3 |
Full |
v2 |
master |
v3 |
Tagged releases off of develop |
With the eventual goal to deprecate v1
once the sister
Bedrock project is fully migrated to
Helm 3.
TLDR
- We are migrating to GitFlow style branch management.
develop
is now the default branch.- When you clone the repo, thats the branch which will automatically be checked out.
- This will effect your flow as that will be the branch you make PRs to.
master
will now only contain tagged releases off ofdevelop
- Helm3 support has been added to the
develop
branch.- Helm2 has been dropped.
- Helm2 support is continued in the
helm2
branch.- The goal is to continue support for this branch in maintenance mode until
full Helm 3 migration is done in the Bedrock scripts. (i.e. bug-fixes and
high-pri feature requests only).
- All new features/bug-fixes that make it to this branch should make it to
the
develop
; But not vice-versa.
- All new features/bug-fixes that make it to this branch should make it to
the
- The goal is to continue support for this branch in maintenance mode until
full Helm 3 migration is done in the Bedrock scripts. (i.e. bug-fixes and
high-pri feature requests only).
- Going forward in conformance to Go's pkg versioning conventions:
- Helm2 support will be tagged under
v0.x.x
-v1.x.x
- Helm3 support will be tagged under
v2.x.x
v0
andv1
will eventually be deprecated once the Bedrock project fully migrates to Helm 3.
- Helm2 support will be tagged under
- Before we can cut any releases with Helm3 support, we will need to add semver
pinning to the bedrock
build.sh
script so it pulls a pinned major (depending on the version of helm it installs) and a new release of Fabrikate does not break pipelines.
Conclusion
Thanks you all for you continued support and you can look forward to a v1
and
v2
release in the coming weeks (hopefully sooner 🙏)