Install Steps and Profiles
Install steps
Skip steps make the installer resumable and allow it to work with prerequisites that are already installed or managed outside OMS. They are also useful when rerunning only a later phase after changing configuration. A skipped step is not validated or replaced by OMS, so skip it only when its result is already present or intentionally unnecessary; skipping a required prerequisite can make a later step fail.
Use --skip-steps for a single invocation, with multiple names separated by
commas. To persist skips across future runs, add them to config.yaml:
operations:
skip:
- load-container-images
The supported skip names are:
| Step | What skipping it bypasses |
|---|---|
copy-dependencies | Copying packaged installation dependencies to the target hosts |
extract-dependencies | Extracting the packaged dependencies on the target hosts |
load-container-images | Loading images bundled in the deprecated full installer package; current lite packages pull images from GHCR, so skip this step |
sops | Installing the SOPS dependency used for encrypted installation secrets |
docker | Installing and configuring Docker on the target hosts |
postgres | Installing and configuring the PostgreSQL instance described by the install configuration |
ceph | Installing and configuring the Ceph cluster and OSDs |
kubernetes | Installing and configuring the Codesphere-managed k0s cluster |
argocd | The Argo CD bootstrap portion of the cluster-dependencies phase |
set-up-cluster | Configuring cluster-level dependencies after the base infrastructure is ready |
ms-backends | Installing the managed-service backend components |
codesphere | Deploying the Codesphere platform itself |
warning
The full installer package is deprecated. Current installations should use
installer-lite.tar.gz and skip load-container-images. The step remains
available only for compatibility with legacy full packages.
Phases
The combined oms install codesphere command installs in this order:
- Copies and extracts dependencies.
- Skips loading bundled container images because the nodes pull them from GHCR.
- Installs SOPS and the container runtime dependencies.
- Installs or configures PostgreSQL.
- Installs and configures Ceph.
- Installs and configures k0s when Kubernetes is Codesphere-managed.
- Installs Argo CD, cluster dependencies, and managed-service backends.
- Installs the Codesphere platform.
The installation can also be run as separate infra, dependencies, and platform
phases when operational change control requires distinct checkpoints — see
oms install codesphere infra --help, oms install codesphere dependencies --help,
and oms install codesphere platform --help.
Install configuration profiles
The profile controls the default Codesphere software footprint, allowing the installation to fit differently sized infrastructure. It does not provision machines or automatically decide how many PostgreSQL, Ceph, control-plane, or worker nodes to use. The wizard or command flags must still describe the actual topology and IP addresses.
The profiles currently behave as follows:
| Profile | Intended use | Monitoring | Kubernetes resource behavior | Other differences |
|---|---|---|---|---|
dev or development | Small development and sandbox installations | Loki, Grafana, and Grafana Alloy are disabled | Applies the noRequests resource profile described below | Datacenter name defaults to dev |
minimal | POC installations that need the normal monitoring stack with a reduced scheduling footprint | Loki, Grafana, and Grafana Alloy are enabled | Applies the same noRequests resource profile | Datacenter name defaults to dev; CloudNativePG operator, Barman Cloud plugin, and RGW load balancer are enabled |
prod or production | Production installations | Loki, Grafana, and Grafana Alloy are enabled | Does not apply the reduced-resource overrides; charts retain their normal resource and replica defaults | Datacenter name defaults to production |
The noRequests resource profile used by dev and minimal removes CPU and memory
requests from Codesphere services and supporting charts. It also reduces several
supporting components to one replica, including ingress controllers, Loki
components, RGW load balancer, and managed-service backends. Selected core
Codesphere services retain two replicas, but their resource requests are set to
zero. This makes the Kubernetes scheduler accept a smaller cluster, but it removes
resource guarantees and reduces failure tolerance. Do not interpret successful
scheduling with this profile as proof that the hosts have enough real CPU or memory
under load.
All profiles start with the same common infrastructure defaults, including
Codesphere-managed Kubernetes, installed PostgreSQL, Ceph, LoadBalancer gateways,
disabled MetalLB, and placeholder localhost addresses. They also start with the
standard workspace and hosting plan defaults. Replace all placeholder topology,
domain, registry, and secrets values during the wizard or configuration review.
Use production for the production baseline
and minimal for the POC topology.
Use dev only when disabling the bundled monitoring components is appropriate.