StarlingX Cert-Manager App
Go to file
Joshua Reed c5b20d9770 Auto-increment chart versions
Enable auto-versioning of helm charts to ensure the FluxCD helm
controller recognizes chart changes.

To guarantee the helm chart version is incremented when a helm chart
change is submitted, the following is implemented:
 - Provide a top level hierarchy for helm charts to differentiate
   between upstream and custom charts: helm-charts/{custom,upstream}
 - Arrange exiting helm chart in appropriate helm-charts location.
   Custom for helm. Charts built and maintained in this repository.
   Upstream for directly used and/or directly used plus patched.
 - stx-APP-helm now contains only manifests and final application
   packaging rules. No custom helm charts should be delivered here.
 - Use StarlingX debian git revcount packaging mechanisms to derive the
   semver BUILD version for upstream helm charts which maintains the
   upstream chart version and adds a versioned BUILD extension.

     <version core> ::= <major> "." <minor> "." <patch>
     <valid semver> ::= <version core> "+" <build>

   Chart version (MAJOR.MINOR.PATCH+STX.REV) is passed to 'helm package'
   command to force the version, where REV == 'git revcount'
 - Establish a new package(s) for the custom or upstream helm chart(s).
 - Enforce a baseline version for all helm charts; eg 'APP-helm'.
    Maintain current rev counts for all new packages, where applicable.
- Update 'stx-APP-helm' to:
   - Update the build dependencies to include the new helm chart package
     and remove dependency on helm
   - Update the rules to remove building the dependency APP helm
     chart(s) and automatically update the chart versions in the
     FluxCD helmrelease.yaml files.

Test Plan:
PASS - Build all packages generating an application tarball verifying
       all versions on the charts and application make sense.
PASS - Introduce temporary chart changes and ensure that the versions
       increment as expected.
PASS - Validate basic application lifecycle operations:
       upload/apply/remove/delete.

Story: 2010929
Task: 49602

Change-Id: Idd2cc177c8f4217583470ebff24f7ce5e7bb01ff
Signed-off-by: Joshua Reed <joshua.reed@windriver.com>
2024-03-05 13:35:33 -07:00
helm-charts/upstream/cert-manager-helm Auto-increment chart versions 2024-03-05 13:35:33 -07:00
python3-k8sapp-cert-manager Application versioning based on build release 2023-12-28 18:29:24 -03:00
stx-cert-manager-helm Auto-increment chart versions 2024-03-05 13:35:33 -07:00
.gitignore Update app Zuul Check Jobs. 2023-12-18 11:32:29 -06:00
.gitreview Added .gitreview 2020-03-31 14:43:49 +00:00
.zuul.yaml Add minimum Kubernetes version supported 2024-02-05 19:32:51 -03:00
CONTRIBUTING.rst Initial commit for cert-manager app 2020-04-17 15:41:08 +00:00
HACKING.rst Initial commit for cert-manager app 2020-04-17 15:41:08 +00:00
README.rst Remove armada specific resources and build 2022-06-28 14:12:39 +00:00
bindep.txt Update app Zuul Check Jobs. 2023-12-18 11:32:29 -06:00
debian_build_layer.cfg Add debian_build_layer.cfg file 2021-10-05 14:04:07 -04:00
debian_iso_image.inc cert-manager-armada-app: update debian_iso_image.inc 2022-12-23 10:18:32 +08:00
debian_pkg_dirs Auto-increment chart versions 2024-03-05 13:35:33 -07:00
github_sync.trigger Initial commit for cert-manager app 2020-04-17 15:41:08 +00:00
requirements.txt cert-manager repo setup for armada app 2020-03-31 16:43:45 -04:00
test-requirements.txt Update app Zuul Check Jobs. 2023-12-18 11:32:29 -06:00
tox.ini Update app Zuul Check Jobs. 2023-12-18 11:32:29 -06:00

README.rst

# StarlingX/Cert-Manager-Armada-App

## Introduction [Cert-Manager](https://cert-manager.io/) is Kubernetes native application that facilities certificate management. This repository deploys Cert-Manager as a platform-managed application using FluxCD Helm Charts for the StarlingX project.

## Build The build tools available as independent repositories under the StarlingX project are necessary to build this application.

See [StarlingX Build Guide](https://docs.starlingx.io/developer_resources/build_guide.html) for more details.

To build this app: ` ${MY_REPO_ROOT_DIR}/cgcs-root/build-tools/build-pkgs cert-manager-helm stx-cert-manager-helm The generated RPM is located in $MY_BUILD_DIR/std/rpmbuild/RPMS`.

To extract the tarball without installing on build system, use command: ` rpm2cpio stx-cert-manager-helm-1.0-0.tis.noarch.rpm | cpio -idmv`

## Usage Note that the Cert-Manager application is included on a StarlingX install system by default.

Following commands can be used to upload, apply, remove, delete, and view the application:

` system application-remove cert-manager system application-delete cert-manager system application-upload <.tgz file> system application-apply cert-manager system application-list`

Cert-Manager Kubernetes resources can be found in the cert-manager namespace.

` kubectl get namespaces | grep cert-manager kubectl get crd | grep cert-manager kubectl get pods --namespace cert-manager`