Skip to content
codesphere-cloudPublic

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

8 stars

Watchers

2 watching

Forks

Repository files navigation

License Build Status Integration Test Status

Operations Management System - OMS

This repository contains the source for the operations management system. It contains the sources for both the CLI and the Service.

OMS CLI

The OMS CLI tool is used to bootstrap Codesphere cluster on customer sites and replaces the formerly used private cloud installer.

Installation

You can install the OMS CLI in a few ways:

Using GitHub CLI (gh)

If you have the GitHub CLI installed, you can install the OMS CLI with a command like the following. Note that some commands may require you to elevate to the root user with sudo.

ARM Mac
gh release download -R codesphere-cloud/oms -O /usr/local/bin/oms -p "oms*darwin_arm64"
chmod +x /usr/local/bin/oms
Linux Amd64
gh release download -R codesphere-cloud/oms -O /usr/local/bin/oms -p "oms*linux_amd64"
chmod +x /usr/local/bin/oms

Using wget

This option requires to have the wget and jq utils installed. Download the OMS CLI and add permissions to run it with the following commands: Note that some commands may require you to elevate to the root user with sudo.

ARM Mac
wget -qO- 'https://api.github.com/repos/codesphere-cloud/oms/releases/latest' | jq -r '.assets[] | select(.name | match("oms.*darwin_arm64")) | .browser_download_url' | xargs wget -O oms
mv oms /usr/local/bin/oms
chmod +x /usr/local/bin/oms
Linux Amd64
wget -qO- 'https://api.github.com/repos/codesphere-cloud/oms/releases/latest' | jq -r '.assets[] | select(.name | match("oms.*linux_amd64")) | .browser_download_url' | xargs wget -O oms
mv oms /usr/local/bin/oms
chmod +x /usr/local/bin/oms

Manual Download

You can also download the pre-compiled binaries from the OMS Releases page. Note that some commands may require you to elevate to the root user with sudo.

  1. Go to the latest release.

  2. Download the appropriate release for your operating system and architecture (e.g., oms_darwin_amd64 for macOS, oms_linux_amd64 for Linux, or oms_windows_amd64 for Windows).

  3. Move the oms binary to a directory in your system's PATH (e.g., /usr/local/bin on Linux/Mac, or a directory added to Path environment variable on Windows).

  4. Make the binary executable (e.g. by running chmod +x /usr/local/bin/oms on Mac or Linux)

Available Commands

The OMS CLI organizes its functionality into several top-level commands, each with specific subcommands and flags.

See our Usage Documentation for usage information about the specific subcommands.

For the complete infrastructure preparation and installation workflow, see Prepare infrastructure and install Codesphere.

How to Build?

make build-cli

See also [CONTRIBUTION.md]

Service

The service implementation is currently WIP

How to Build?

make build-service

Community & Contributions

Please review our Code of Conduct to understand our community expectations. We welcome contributions! All contributions to this project must be made in accordance with the Developer Certificate of Origin (DCO). See our full Contributing Guidelines for details.

Select the Codesphere version through config.yaml

Set the package version alongside the existing operation skip steps:

operations:
  codesphere:
    version: 1.111.0
    hash: abc123 # Optional: omit to select the latest build of this version.
  skip: [load-container-images]
oms install codesphere --config config.yaml --priv-key age-key.txt

The install command resolves the configured build through the package portal and downloads its installer-lite.tar.gz archive into OMS_WORKDIR (default ./oms-workdir). Existing archives use the shared downloader's resume support, and the checksum is verified after downloading. Plain versions such as 1.95.0 resolve to portal tags such as codesphere-v1.95.0. The install command also supports merged configuration files; the last configured version wins. Existing skip-step behavior is unchanged.

An explicit oms install codesphere --package <archive> overrides the configured version and supports offline installation. oms download package <version> and --version <version> retain their existing behavior of downloading to the current directory and continue requiring an explicit version.

The existing scalar form, operations: {codesphere: 1.111.0}, remains supported. Config generation writes the explicit object form. Branch names such as master are supported in either form. A supplied full Git hash can also match the abbreviated hash stored by the portal. Quote numeric-looking versions such as "1.10" to preserve them as YAML strings.

oms init install-config --codesphere-version 1.111.0 --codesphere-hash abc123

--codesphere-hash is optional. In interactive mode these flags provide defaults for the version and hash questions; entered answers take precedence. In non-interactive mode they set the generated values directly. Bootstrap's --install-version and optional --install-hash are also written to the generated config. GCP installations then read that config instead of passing a package override; local package overrides and the download required before registry mirroring remain supported.

When a bootstrap install config contains operations.codesphere.version, bootstrap automatically installs that version using the optional configured hash. Explicit --install-version or --install-local options override the config selection; --install-hash overrides the configured hash.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

8 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages