Skip to content
ibm-masPublic

About

A GitOps approach to managing Maximo Application Suite

Resources

Contributing

Stars

2 stars

Watchers

15 watching

Forks

Repository files navigation

Maximo Application Suite GitOps

A GitOps approach to managing Maximo Application Suite using ArgoCD and Helm.

Overview

This repository contains all Helm charts, ArgoCD Application definitions, and supporting scripts for deploying and managing IBM Maximo Application Suite (MAS) using a GitOps approach with ArgoCD. It implements an App of Apps hierarchy that manages cluster prerequisites, MAS instances, Suite License Service, and AI Service deployments.

Configuration

Configuration for each cluster and MAS instance is stored in a separate config repository. The GitOps charts in this repository consume those config files via ArgoCD ApplicationSet generators. See the Configuration Repository documentation for details on the required file structure and field names.

Resources Created

This repository does not deploy resources directly. Resources are deployed by the Helm charts in the cluster-applications/, instance-applications/, sls-applications/, and root-applications/ directories. See the README in each chart directory for the specific resources it creates.

Examples

Deploy the Account Root Application

# values.yaml passed to the ibm-mas-account-root chart
account:
  id: "production"
generator:
  repo_url: "https://github.com/myorg/mas-config"
  revision: "main"
source:
  repo_url: "https://github.com/ibm-mas/gitops"
  revision: "main"
argo:
  namespace: "openshift-gitops"
  projects:
    rootapps: "mas"
    apps: "mas"

Repository Structure

This repository is organized into several key directories that work together to deploy and manage MAS/SLS/AIService instances:

root-applications/

Contains ArgoCD Application definitions that follow the App of Apps pattern. These are deployed to the ArgoCD management cluster and create a hierarchical structure:

cluster-applications/

Helm charts deployed to target clusters as prerequisites for MAS instances. These are referenced by Applications defined in ibm-mas-cluster-root:

  • Operator installations (DRO, NFD, GPU, etc.)
  • Certificate management
  • RBAC configurations
  • Cluster-level utilities

instance-applications/

Helm charts for MAS instance resources. These are referenced by Applications defined in ibm-mas-instance-root:

  • MAS Suite installation and configuration
  • Database deployments
  • Application installations (Manage, Monitor, etc.)
  • Workspace configurations

sls-applications/

Helm charts for Suite License Service Standalone instances, generated by the SLS ApplicationSet in ibm-mas-cluster-root.

sub-charts/

Utility Helm charts used as dependencies across multiple parent charts. These provide reusable components and common functionality.

rbac/

RBAC (Role-Based Access Control) configurations for deploying MAS in Application Admin Mode with namespace-scoped permissions.

Note: The Kustomize-based RBAC in this directory is only required when using the pre-install repository for cluster prerequisites. If you are using cluster_admin_role=true in a separate ArgoCD instance to deploy cluster-level resources, the 600-application-admin-rbac Helm chart will automatically create all necessary RBAC for the application_admin_role. If you have one ArgoCD instance handling both cluster and namespace resources (the default scenerio), you can skip this directory entirely.

See rbac/README.md for detailed information on:

  • Deployment modes (Cluster Admin vs Application Admin)
  • When to use Kustomize-based RBAC management
  • Generating namespace overlays for MAS instances
  • Permissions included and excluded
  • Deployment workflows and troubleshooting

Documentation

Comprehensive documentation is available at:

Development

See CONTRIBUTING.md for details on documentaion building and precommit hooks. See AGENTS.md for build commands, linting, and development guidelines.

About

A GitOps approach to managing Maximo Application Suite

Resources

Contributing

Stars

2 stars

Watchers

15 watching

Forks

Releases

Packages

Used by

Contributors

Languages