Skip to content

Alfresco Content Services containerized deployment (Helm and Docker Compose)

License

Notifications You must be signed in to change notification settings

Alfresco/acs-deployment

Repository files navigation

Alfresco Content Services Containerized Deployment

release kubernetes tested version Helm release

helm charts (enterprise) helm charts (community)

Docker Compose (enterprise) Docker Compose (community)

This project contains the code for running Alfresco Content Services (ACS) with Docker using Docker Compose or on Kubernetes using Helm Charts.

User docs available at: https://alfresco.github.io/acs-deployment/

Important changes for Docker Compose

Repository content store persistence

We've introduced an anonymous volume for the alfresco service to ensure content store data remains intact across container restarts. This enhancement improves the user experience when fine-tuning Compose files and allows for repeated use of docker compose up -d without data loss.

Compose extends feature

We have started to leverage extends feature of docker compose to improve maintainability of the compose files we provide. This means that any compose file in docker-compose folder cannot be used anymore as a standalone file but must be invoked within that folder.

If you want to further customize the compose files, make sure to understand and use the definitions included in the commons folder.

License

The code in this repository is released under the Apache License, see the LICENSE file for details.

Contribution Guide

Please use this guide to make a contribution to the project and information to report any issues.

Release

Helm charts release

New releases are usually made from the default branch. When a bugfix release is necessary and master branch already received updates that are meant to be released at a later time, then the release must be made from a branch which follows the release branch pattern: release/v$Major.Minor.

First ensure that:

  • the supported-matrix reflects the status of the currently released Alfresco products and update if necessary before proceeding.
  • the components charts have been released in stable versions (no pre-release version should be present in Chart.yaml at the time of tagging).

Start the release by opening a PR against the appropriate branch that will:

  • Update the EOL table in case a version is deprecated
  • For minor releases, ensure to update the links beginning with https://support.hyland.com/r/Alfresco to reflect the latest version or corresponding minor update documentation.
  • In alfresco-content-services and acs-sso-example charts:bump chart version to the version you want to release.
  • Run pre-commit run --all-files helm-docs to update helm docs
  • Edit upgrades docs renaming the To be released section to the current version and create a new To be released section for the future.
  • Run Bump versions workflow against the same newly created branch, the first time with charts option. Inspect the changes pushed on the branch, revert unwanted changes if necessary - all charts dependencies should not be using any -alpha. version.
  • Run Bump versions workflow against the same branch with option values. This will update both docker compose tags and helm charts values. Inspect the changes pushed on the branch, looking for any missing update.

Once the PR has been merged, create the release with:

git tag -s vx.x.x -m vx.x.x
git push origin vx.x.x
gh release create vx.x.x --generate-notes -t vx.x.x -d

where vx.x.x is the same alfresco-content-services Chart version.

Once the workflow triggered by this new tag is successful, review the GitHub release notes, usually removing dependabot entries and other not-really useful changelog entries.

Publish the release (remove draft status).

Once the tagged workflow is successful, the release process is completed.