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
2023-12-18 11:32:29 -06:00
2020-03-31 14:43:49 +00:00
2023-12-18 11:32:29 -06:00
2024-03-05 13:35:33 -07:00
2023-12-18 11:32:29 -06:00

# 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`

Description
StarlingX Cert-Manager App
Readme 1.4 MiB
Languages
Python 75.5%
Makefile 24.1%
Shell 0.2%
Assembly 0.2%