This repository aims at delivering independent and lightweight Helm charts for Alfresco Content Services platform that can be used as building blocks by devops teams to build the Content Services platform that match the organization needs.
If you want to understand what are the principles to leverage in order to build on top of Alfresco components' chart please refer to the getting-started-with-alfresco-charts
Each individual chart has its own documentation page that's available in the chart directory in charts/. There are the values available for each of them.
Each chart is tested against a default configuration on
KinD. You can check the currently tested K8s version
by looking at the KIND_NODE_IMAGE
value in the main lint-test
workflow.
We are ensuring backward compatibility with older K8s versions with
kubeconform. You can check the oldest
K8s version tested by looking at kubernetes-version
inside the
kubeconform-helm-min
hook in pre-commit
configuration.
This repository follows the helm/charts-repo-actions-demo template, that support the testing and the release of helm charts with the help of two tools:
In order to install all the tools required for development on MacOS via
Homebrew, run: brew bundle install
To setup pre-commit, run:
pre-commit install
To install required helm plugins:
helm plugin install https://github.com/jtyr/kubeconform-helm --version v0.1.12
helm plugin install https://github.com/helm-unittest/helm-unittest --version v0.3.4
Each time a PR is raised, ct
automatically detects which charts has been
changed and run for them:
- linter
- unittest
- integration tests on KinD
Once a PR that contains a chart version bump is merged, the main workflow will release each version that has not yet released. Each chart release will trigger the creation of git tag, a GitHub release with packages attached and the update of the charts registry index.
There is an initial support for bumping charts dependencies with Updatecli via a manually triggered GHA workflow.
- Ensure alfresco-common version is not a pre-release, otherwise release it.
- Ensure supported-matrix has been manually updated for the latest acs version released and the compatibility matrix is up to date.
- Trigger the creation of an update branch by executing Bump
version with
values
option. Optionally you can test not yet merged changes from alfresco-updatecli by specifying a branch other than master. - Check that
updatecli-bump-acs
branch has been created. Review changes made by updatecli according to the supported matrix, eventually revert manually unwanted changes and push again. - Ensure that all the charts are getting a GA release (non-alpha) at this point.
- Once the PR has been merged and all charts released, you can head to acs-deployment to update the ACS umbrella chart.