Releases: projectsyn/commodore
Release v0.6.0
This release of Commodore mainly consists of QoL improvements.
Additionally, this release deprecates parameter commodore.jsonnet_libs. Components which require 3rd-party Jsonnet dependencies should specify their dependencies in a jsonnetfile.json. Commodore v0.3.0 and newer use jsonnet-bundler to fetch Jsonnet dependencies (and inject kube.libsonnet as a dependency), but the old commodore.jsonnet_libs hierarchy parameter was never fully deprecated even though it was not really used anymore.
Changes since v0.5.0
Added
- Render multi-line strings as block-scalars in Commodore's YAML dump helpers (#294)
- Deprecation notice for parameter
commodore.jsonnet_libs(#300) - Command line options to override global and tenant repo revisions (#301)
- Tests and benchmarks on Python 3.9 (#302)
- Kapitan targets are created from scratch in local mode (#303)
- Command line option to disable Jsonnet and Kapitan dependency fetching in local mode (#303)
Changed
component newandcomponent deletedon't add or remove the new component in the inventory andjsonnetfile.jsonanymore (#303)
Fixed
Release v0.5.0
This release of Commodore deprecates parameters.component_versions in favor of parameters.components, see also https://syn.tools/commodore/reference/deprecation-notices.html#_parameters_component_versions_is_deprecated
Going forward we're going to publish Commodore deprecation notices in https://syn.tools/commodore/reference/deprecation-notices.html
Changes since v0.4.2
Added
- Generate a best-effort SSH-based push URL for component repos (#281)
- Deprecation notice framework (#287)
Changed
- Update pytest options to remove warnings (#283)
- Move component URLs to
parameters.components(#284) - Default component version to "origin/HEAD" instead of "master" (#286)
- Deprecated use of
parameters.component_versions(#287)
Fixed
v0.4.2
v0.4.1
This is a bugfix release which includes a bulk update of all dependencies, including Kapitan.
This release updates Kapitan to v0.29.4 which addresses two open issues in Commodore:
- Commodore now supports removing components which were included earlier in the hierarchy (#71).
- The
FileExistsErrorwhen fetching dependencies has been resolved in Kapitan since v0.29.2 (#233).
Changes since v0.4.0
Added
- Add GitHub action to build Kapitan docker image from
tools/Dockerfile.kapitan(#266)
Changed
Fixed
v0.4.0
Added
- Add support for component instantiation (#234).
- Add basic renovate config to component template (#249).
- Ability to configure the working directory (#230)
- Ability to configure working dir with an environment variable (#256)
Changed
-
Git repository URLs are now retrieved from the Lieutenant API (#226)
-
Create a Kapitan target for each component (#227)
This requires a refactored hierarchy which replaces class includes of
components with entries inapplications.
classes: "components.argocd"becomesapplications: "argocd". -
Pull essential libraries with Jsonnet Bundler (#246)
-
Add option to define postprocessing filters in the Kapitan inventory (#222).
-
Update component template to use inventory postprocessing filters (#249).
-
Components are no longer deleted when compiling a cluster (#253)
Missing components will be cloned.
Existing components will be updated.
This also affects artefacts downloaded by components.
Component authors must ensure their downloaded path changes with versions.
Checkout the component style guide(https://syn.tools/syn/references/style-guide.html#_component_style) for further details.
Fixed
- Replace remaining references to
common.ymlwithcommodore.yml(#204) - Adjust component new/delete to update
jsonnetfile.json(#211) - Provide
inventory_pathin Kapitan's argument cache (#212) - Clear Jsonnet lock file (#215)
- Also make arrays mergeable with
makeMergeablehelper (#217)
Removed
v0.3.0
Added
- Ability to manage dependencies with jsonnet-bundler (#190)
- Mypy static type analysis to the tox/CI environments. (#180)
- Add
--pad-arraysto component template jsonnetfmt arguments (#186) - New
commodore cluster listcommand (#179) - New
commodore component deletecommand (#188)
Changed
-
Inventory hierarchy is now dynamic (#195)
A class hierarchy needs to be added.
Check the documentation for details. -
Pass through facts from Lieutenant API to
parameters.facts(#192) -
Slightly improved error message in case
commodore component newis called in a folder that is not a populated (compiled) catalog (#183) -
Vault default values (#176)
-
Improved
component newdocumentation (#182) -
component newrestricts allowed component slugs (#189)
Deprecated
- The following parameters will be removed in a future release.
They are replaced with corresponding values withinparameters.facts(#192).parameters.cluster.dist→parameters.facts.distributionparameters.cloud.provider→parameters.facts.cloudparameters.cloud.region→parameters.facts.regionparameters.customer.name→parameters.cluster.tenant
Fixed
v0.2.3
v0.2.3
Added
- Validation of component slug (#153)
component compilenow applies postprocessing filters (#154)- Option to disable postprocessing filters (#155)
--interactiveoption to prompt push confirmation (#157)- Extend component template with docs setup (#158)
- Build Helm bindings for native Helm dependencies (#161)
- Replaced playbook.yml with custom command (#165)
Changed
v0.2.2
v0.2.1
v0.2.0
Added
getValueOrDefaulthelper (#125)makeMergeablehelper (#126)commodore component compileto compile a single component (#122)- Option to explicitly set a component's display name (#133)
- labels to issue templates (#134)
- Vale Makefile target in component template (#137)
- Allow overriding Git user info for catalog commits (#140)
- Refactor tests to work with new setup-python (#143)
Changed
compileandcleancommands were moved to thecatalogcommand group (#122)new-componentcommand was moved to thecomponentcommand group (#122)- Jsonnet library file extension to
.libsonnetin component template (#137) - Applied the component template to Commodore itself (#145)
Fixed
- Commit messages from automated catalog updates do no longer contain a leading newline (#136)