- Autoincrement base version from tag if not specified #230 (@manics, @consideRatio, @minrk)
chartPath
: Chart directory can be different from the chart name #229 (@manics, @consideRatio)- Add BRANCH expansion #190 (@bleggett, @minrk)
- fix: skipPlatform for one image influenced other images #193 (@consideRatio, @manics)
- maint: let tests check the output against another set of strings #222 (@consideRatio, @minrk)
- maint: make tests handle buildx 0.10+ and OCI index/manifest responses #215 (@consideRatio, @minrk)
See full changelog for dependabot and pre-commit.ci updates.
The following people contributed discussions, new ideas, code and documentation contributions, and review. See our definition of contributors.
(GitHub contributors page for this release)
@bleggett (activity) | @consideRatio (activity) | @manics (activity) | @minrk (activity)
- accept non-prerelease baseVersion (append -0.dev) #184 (@minrk, @consideRatio)
Make sure to read about the breaking changes and the release highlights below!
If you are using chartpress to publish development releases should be aware that
the suffix appended to chart versions and image tags is changed to look like
1.2.3-0.dev.git.n.hash
, where the following things has changed:
-0.dev
is appended by default for non pre-release versions.n
is the number of commits on the branch, where it previously was the number of commits since the last tag on the branch.
- The option
baseVersion
is added to chart configuration in chartpress.yaml, for more details see the README.md section on controlling development versions.
- use baseVersion config to set the base version for development releases (supersedes useChartVersion config) #179 (@minrk)
- Allow extra options to be passed to docker build #142 (@adamblake)
- upload test coverage to codecov #181 (@minrk)
- Enforce that
--reset
is an exclusive argument #180 (@minrk) - count commits on branch instead of commits since last tag on branch #178 (@minrk)
- pre-commit: add pyupgrade and isort (replaces reorder-python-imports) #173 (@consideRatio)
- (reverted) accept --tag arg in --reset #152 (@minrk)
- (reverted) Add
useChartVersion
and change appended version suffix (now like1.2.3-0.dev.git.3.h123
) #150 (@minrk) - Add tests with dev tags and backport branches #145 (@minrk)
- Drop support for py36 and misc ci maintenance #144 (@consideRatio)
- Remove six (no longer needed by docker) #140 (@manics)
- docs: update README about use with GitHub actions #139 (@consideRatio)
(GitHub contributors page for this release)
@adamblake | @consideRatio | @manics | @minrk
This release improve performance significantly when building images for multiple platforms. Chartpress can now can now also decide if such images needs to be built and pushed, like it can for single platform images.
(GitHub contributors page for this release)
The release of 1.2.1 was made incorrectly to PyPI, so this is another release to fix the situation.
- fix: use of github workflow tokens - different from PATs #134 (@consideRatio)
- fix: mute handled git error messages #133 (@consideRatio)
(GitHub contributors page for this release)
- Rename master to main #128 (@consideRatio)
(GitHub contributors page for this release)
- Optionally use buildx to build for multiple platforms #123 (@manics)
- Add skipPlatforms option for multi-platform docker buildx images #124 (@manics)
- Add mock tests for public chartpress methods that call commands #120 (@manics)
- Add pre-commit #119 (@manics)
- Update readme #122 (@manics)
- Fix pytest lru_cache invalidation #121 (@manics)
(GitHub contributors page for this release)
- fix: preserve quote formatting for image tags also #115 (@consideRatio)
- refactor: rename two local variables for readability #114 (@consideRatio)
- Fix --list-images to not update Chart.yaml's version #112 (@consideRatio)
(GitHub contributors page for this release)
- only apply strict version checking for charts to be published #109 (@minrk)
- fix: compute tag per image #108 (@danielnorberg)
(GitHub contributors page for this release)
@consideRatio | @danielnorberg | @minrk
- bugfix: multiple images built was evaluating to a single tag #107 (@consideRatio)
(GitHub contributors page for this release)
@betatim | @consideRatio | @jacobtomlinson | @jirikuncar | @leafty | @manics | @minrk | @rokroskar | @yuvipanda
The 1.0.0 release can be seen as a reflection of chartpress having become quite reliable, thank you everyone for your contributions and work on it!!!
- Strip v prefixes for Chart.yaml versions for Helm3 compliancy #106 (@consideRatio)
- Add --force-publish-chart and default to not overwriting #102 (@consideRatio)
- Major refactor for readability pre 1.0.0 release #105 (@consideRatio)
- Migrate from Travis CI to GitHub Actions #101 (@consideRatio)
- CI: fix syntax typo making us not run tests before publish #100 (@consideRatio)
- Image config option added: rebuildOnContextPathChanges #98 (@consideRatio)
- add chartpress --list-images #96 (@minrk)
- support overriding imageName #90 (@minrk)
- CI: publish tags without tests and test python 3.6-3.8 #95 (@consideRatio)
- CI: Test chartpress usage with both helm2 and helm3 #92 (@consideRatio)
(GitHub contributors page for this release)
@consideRatio | @manics | @minrk
0.6.0 include a single fix to avoid breaking SemVer 2 validity, which is
essential for Helm 3 compatibility. The change is to prefix build number and
build hash with n
and h
respectively. The reason for doing this is that it
ensures we don't break the SemVer 2 assumption to not have a numerical segment
starting with zero, like for example 0.1.0-002.sdfg234
has with its 002
.
Helm 3 enforce this, while Helm 2 doesn't.
- Prefix build info with n and h to ensure SemVer 2 validity, in order to solve Helm 3 compatibility #87 (@consideRatio)
- Add --force-build / --force-push, and don't let --tag imply it #70 (@consideRatio)
helm dependency update
is now run as part of publishing, this ensures we honor requirements.yaml before publishing a chart #69 (@consideRatio)
- Fix regression to make a chart's
images
configuration optional again #77 (@jacobtomlinson) - Fix regarding image paths as part of setting up thorough testing with PyTest #68 (@consideRatio)
- Setup CD of PyPI releases on git tag pushes #83 (@consideRatio)
- Adopt bump2version for automating version bumps #74 (@minrk)
0.4.3 contains important bug fixes for versions 0.4.0
to 0.4.2
. A big bug
fixed was that charts published using --publish-chart
replaced previous charts
in the helm chart repositories' index.yaml
file that only differed by a SemVer
2 compliant build suffix like +001.asdf123
. The bugfixes introduced in this
release avoid this issue, caused by a bug in helm, by using a build suffix of
.001.asdf123
instead - a breaking change.
Example versions to expect in this release and onwards are given below where
some commits were made in between git tagged (0.1.0
and 0.2.0-beta.1
)
commits.
# without --long
0.1.0
0.1.0-002.sdfg234
0.2.0-beta.1
0.2.0-beta.1.003.asdf123
# with --long
0.1.0-000.qwer123
0.1.0-002.sdfg234
0.2.0-beta.1.000.wert234
0.2.0-beta.1.003.asdf123
- Fix latest tagged commit #66 (@minrk)
- Fix bugs: index merge, image tag, g prefix, ignored tags #64 (@consideRatio)
- Support
valuesPath
pointing to a singleimage:tag
string in addition to a dict with separaterepository
andtag
keys #63 (@minrk). - Support lists in
valuesPath
by using integer indices #65 (@minrk), e.g.section.list.1.image
for the yaml:section: list: - first: item image: "not set" - second: item image: "image:tag" # <--sets this here
- --long flag to always output build information in image tags and chart version #57 (@consideRatio)
- Refactor publish_pages for comprehensibility #56 (@consideRatio)
- Deprecate --commit-range #55 (@consideRatio)
- Reset Chart.yaml's version to a valid value #54 (@consideRatio)
- Don't append +build on tagged commits #53 (@consideRatio)
- Chart and image versioning, and Chart.yaml's --reset interaction #52 (@consideRatio)
- Add --version flag #45 (@consideRatio)
- Update chartpress --help output in README.md #42 (@consideRatio)
- Add initial setup when starting from scratch #36 (@manics)
- avoid mangling of quotes in rendered charts (#1) #34 (@rokroskar)
- Add --skip-build and add --reset to reset image tags as well as chart version #28 (@rokroskar)
- Fix conditionals for builds with new tagging scheme, by checking if images exist locally or on the registry rather than assuming the correct tag was pushed based on commit range.
- Echo shell commands that are executed during the chartpress process
- Add chart version as prefix to image tags (e.g. 0.8-abc123)
- Fix requires-python metadata to specify that Python 3.6 is required
- Another ruamel.yaml type fix
- Add
--image-prefix
option - Workaround ruamel.yaml bug when strings are all-digits and start with 0 and contain an 8 or 9.
- Fix type checking for recent ruamel.yaml
- Fix image tagging when building multiple images
- Make image-building optional
- Show changes being made
- Support GITHUB_TOKEN env for pushing to gh-pages
- Include chartpress.yaml when resolving last changed ref
- Update only necessary fields
- Add missing dependency on ruamel.yaml
first release!