mirror of
https://github.com/cirruslabs/orchard.git
synced 2026-09-29 19:41:15 +02:00
47fef47d1c3353b18c4429d56232a340143d9393
* Port forwarding support * .golangci.yml: remove and replace deprecated and archived linters * Client: pass credentials when calling WebSocket API methods * API: require ServiceAccountRoleComputeWrite role for port forwarding * Use Buf * Rename Poll() RPC method to Watch() * Split Rendezvous into two parts: Watcher and Proxy (#32) * Split Rendezvous into two parts: Watcher and Proxy * Implement Proxy cancellation * Use Protocol Buffers structure directly in Watcher * Fix TestWatcher after switching to Protocol Buffers structure * portForwardVM(): ensure we also check for gin's context
Orchard
Orchard is an orchestration system for Tart.
Create a cluster of bare-metal Apple Silicon machines and manage dozens of VMs with ease!
Installation
go install github.com/cirruslabs/orchard/...@latest
Quick start
Start the Orchard Controller and the Worker in a single inocation:
orchard dev
Create a Virtual Machine resource:
orchard create vm --image ghcr.io/cirruslabs/macos-ventura-base:latest ventura-base
Check a list of VM resources to see if the Virtual Machine we've created above is already running:
orchard list vms
Development
Development is done as one would normally develop any Golang package, however, if you did modify any *.proto files in the rpc/ directory, install Buf and run the following command from the project's root directory to re-generate the code:
buf generate
Description
Orchestrator for running Tart Virtual Machines on a cluster of Apple Silicon devices
Readme
3 MiB
Languages
Go
99.4%
JavaScript
0.6%