Skip to content

BerryBytes/01cloud-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

01cloud-core

Build Pre-commit License: Apache-2.0 Go Version

01cloud-core is the control-plane worker service that bridges the 01cloud API and Kubernetes clusters. It consumes asynchronous queue messages, executes Kubernetes/Helm operations, and publishes status/events back to the platform.

Features

  • Queue-driven execution with pluggable backends (Google Pub/Sub or RabbitMQ)
  • Kubernetes environment lifecycle management (create, upgrade, rollback, destroy)
  • Helm release orchestration for environments and operator apps
  • Add-on, storage, load balancer, init-container, and cron-job handlers
  • WebSocket status/event emission to API clients
  • Built-in developer quality gates (pre-commit, linting, tests, secret scanning)

Installation

Prerequisites

  • Go 1.23+
  • Docker
  • kubectl
  • pre-commit (recommended)
  • trivy (recommended)

Clone and setup

git clone https://github.com/berrybytes/01cloud-core.git
cd 01cloud-core
cp .env.sample .env
pre-commit install

Usage

Run locally:

make run-dev

Run tests with coverage:

make test-dev

Build container image:

make build

Configuration

Copy .env.sample to .env and configure values for your environment.

Variable Required Description
GCLOUD_PROJECT Yes (Pub/Sub mode) GCP project used by Pub/Sub client
GCLOUD_NAMESPACE Yes Prefix/namespace for queue topics/subscriptions
HOST_NAME Yes Service host binding
API_SERVER Yes API/WebSocket server URL
API_SECRET Yes JWT/shared secret used for authenticated API/WebSocket calls
MESSAGE_TYPE No Queue backend: pubsub (default) or rabbitmq
RABBITMQ_URL Yes (RabbitMQ mode) RabbitMQ connection URL
BUGSNAG_KEY No Bugsnag API key
ZONE_NAME No Deployment zone label
TLS No TLS secret/certificate reference

Development

Useful commands:

Command Description
make test-dev Run Go tests with coverage
make lint Run lint stage in Docker
make test Run Docker test stage
make qa Run format checks, tests, vet, and lint
pre-commit run --all-files Run all pre-commit checks

Contributing

Please read CONTRIBUTING.md before submitting changes.

Security

To report vulnerabilities, see SECURITY.md.

License

This repository currently includes the Apache 2.0 license text in LICENSE. If you plan to relicense, update this file before public release.

About

01cloud-core is the control-plane worker service for 01cloud. It connects the platform API with Kubernetes clusters by consuming async queue messages, executing cluster and Helm operations, and sending status/events back to clients

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages