Skip to content

Vyomi v2.2.0

Choose a tag to compare

@github-actions github-actions released this 24 Jun 06:13
· 3 commits to main since this release

The Pro (Docker) compute tier + the subscription-tier ladder. Adds the
Docker substrate so Free/Lite/Pro install with one docker compose up (no
Multipass), and introduces Lite (full conformance on Docker, no compute)
alongside the existing Free/Pro/Max. One codebase throughout: a tier only
conditions the shared infra-creation path via a flag (ADR-001), never a
separate flow. (Nano/Micro — the in-browser WASM tiers — ship in v2.3.0;
Enterprise in v2.4.0.)

Added

  • Pro Docker compute backend — EC2/GCP/Azure instances as SSH-enabled Docker containers. Wires the core/compute ComputeBackend seam (ADR-001/002) into the full server.py instance lifecycle: a new _docker_* family (create/start/stop/reboot/terminate/sync + a docker exec web console) dispatched from _start/_stop/_reboot_runtime_process, api_ec2_terminate_instance, and every per-backend sync site (EC2 + GCP). _ec2_choose_runtime_backend prefers docker when VYOMI_COMPUTE_BACKEND=docker; Ubuntu/Linux AMIs gain docker in supported_backends; _runtime_available("docker") probes the daemon. Instances launch as sibling containers (vyomi-i-<id>) with cgroup-limited CPU/RAM, a persistent root volume (EBS-like), docker-in-instance, and SSH enabled out of the box (VYOMI_SSH_PUBKEYauthorized_keys). The vyomi/instance:ubuntu-24.04 AMI (sshd + DinD, tini) is published by docker-publish.yml; the simulator image ships the docker CLI. Validated end-to-end on real Docker: docker compose up → SDK RunInstances → real SSH container on vyomi-net reaching the API → terminate cleanup.
  • docker-compose.cloudlite.yml — standalone pull-only quickstart for the Free/Lite/Pro Docker substrate. One file, published images only (no build: context, no source tree): docker compose up -d → a working multi-cloud simulator with Docker-backed compute. Adds an explicit vyomi-net network + VYOMI_INSTANCE_NETWORK so launched instances join it and reach the simulator/backends by DNS. Runs the simulator as root so it can drive the host docker socket.
  • Lite / Nano / Micro license tiers in core/tier_policy.py (pure data — the enforcement middleware auto-wires; no new flow). Lite = Pro quotas minus real compute (locks the compute category → RunInstances 403s, full conformance pack works at Pro quotas). Nano/Micro defined ahead of their v2.3.0 substrate. KNOWN_TIERS, rate limits, license-claim validation (license_remote.py) and the credit table all extended; Pro price corrected ₹299 → ₹499.

Changed

  • Distribution tiers renamed in docs/architecture/distribution_strategy.md: CloudMax/CloudLite+/CloudLite/CloudNano+/CloudNano → Max/Pro/Lite/Micro/Nano. Same ADR-001 single-codebase model; matrix + system-requirements + pricing (₹) tables updated.
  • Three EC2 query-protocol gaps fixed (surfaced by end-to-end testing; affected every backend, not just Docker): SDK RunInstances now boots the instance (auto_start=True, was False); TerminateInstances dispatches per backend (docker instances were never removed); the simulator image ships openssh-client so the backend can mint the per-instance SSH key. The default CloudSim launch policy now allows the docker backend.

Deferred

  • Nano + Micro (WASM in-browser tiers) → v2.3.0; Enterprise → v2.4.0 (compliance, cross-tenant RBAC, SLA, dedicated support, add-on packs).
  • cloudlearn/cloud-learnvyomi rename — staged, backward-compat (NOT a blind sed; a half-rename caused the v2.1.0.1 52% bug). Scope: 337 CLOUDLEARN_* env hits / 714 lowercase ids / container+volume+script names / license JWT fields.

Artifacts

  • SHA256SUMS
  • cloud-learn-0.1.0.tar.gz
  • cloud-learn-2.2.0-1.noarch.rpm
  • cloud-learn-2.2.0-x64.msi
  • cloud-learn-2.2.0-x64.msi.sha256
  • cloud-learn-2.2.0.tar.gz
  • cloud-learn_2.2.0_all.deb

Docker image: docker pull vyomi/appliance:2.2.0
Install: curl -fsSL https://raw.githubusercontent.com/vyomi-cloud/appliance/main/install.sh | bash
SHA256 checksums: see SHA256SUMS in attached artifacts.