Releases: psviderski/uncloud
Releases · psviderski/uncloud
v0.1
Changelog
- df25b0d add --mode flag to run command
- 2a898b3 add -v|--volume to bind mount host path into a service container
- 5cb765d add Docker gRPC service to create and start a Docker container on machine
- b236994 add EmptyResponse common message
- 708e14a add Exec and ExecMulti methods to corrosion API client
- 6d39174 add Healthy method to Container that derives it from status string
- 16120b8 add ListContainers and RemoveContainer methods to Docker service
- 1fb8a3d add ListServices method and ls CLI command
- 5621a84 add Mode to Service entity
- 43ddb5c add PullImage method to gRPC Docker service
- 4de7ecd add String() method for PortSpec to convert to publish format
- 2134f3c add a stub for Caddyfile controller
- 6d1c3aa add basic client TCPConnector to directly connect to a gRPC endpoint
- 349dd0d add basic e2e cluster lifecycle test
- bfbcec3 add caddy/v2 dependency to generate a config
- c635847 add comments
- c2b466b add common Metadata message to be injected in reply messages by gRPC proxy
- 73d41c7 add compose-like progress for running service
- f7c4490 add diagram for landing page with drawio source
- 5504951 add e2e test for global service creation and removal
- e123f72 add exponential backoff for network errors in corrosion client
- c29fa57 add favicons
- 34316c7 add helper Empty message
- 8e53fd4 add how it works section with diagram
- 6e0df53 add in docker service runner for corrosion
- e73e389 add index on containers.machine_id
- 4ec87db add init machine to store when initialising a cluster
- bda1123 add install_cli.sh script to be donwloaded at get.uncloud.run
- 5061097 add landing section to follow the journey and subscribe via email
- bb96746 add logging for starting/restarting corrosion service
- fa54584 add logo and project name
- 085ee28 add make targets to build and push corrosion image
- 24a824b add make targets to build and push ucind image
- 3c1d220 add methods to create, update, list, delete containers in store
- 336bdf9 add minor log
- e5bda92 add opptimistic sleep on corrosion service start to wait for schema initialisation
- daada3b add service inspect command, introduce squirrel for sql query building
- f85b5dd add service rm CLI command
- 8db7ac8 add subprocess corrosion service runner
- 3d5fe0a add support for tcp cluster connections in uncloud config
- 2819ba6 add sync_status field to containers table
- b016252 add terminal demo to hero section
- d7bad5e add todo
- 40f9298 add updated_at field to containers table
- 848abbd add validation for PortSpec
- cbe7c56 add value proposition section: Cloud-like experience you control
- 9755a69 allow one2many for ListContainers
- 5c74b09 allow running a service on a specified machine
- 94186b2 allow to subscribe to machine changes in the cluster store
- 1bcb883 auto resubscribe a corrosion subscription if an error occurs
- ee580df automatically rotate WG peer endpoints if can't establish a connection
- 8bfb3b8 basic validation for hostname in port publishing
- e9d0768 build corrosion image based on wolfi]
- 7b98ed3 calculate WG peer connection status
- b25938a clean up corrosion systemd service
- e82b78d comment DB schema
- 911522c comment out alpinejs
- 69c9167 configure corrosion bootstrap peers when initialising a machine
- 741378d create containers table in Corrosion store
- 9fcc319 create corrosion config
- 0effba0 create corrosion store when initialising machine
- 4479490 create custom NewSlogTextHandler log handler to override the json one patched by caddy pkg
- 26df674 define PortSpec type for publishing ports
- c3ba43a delete old non-distributed cluster state, fix storing endpoints in store
- e851f25 delete removed Docker containers from store, sync only uncloud labeled
- 3ee7cb6 describe features on landing
- 9dbcf1e do not build and deploy uncloud binary to dev machines
- aa236aa do not init corrosion data dir in install.sh
- 2f6c988 do not rotate endpoints on daemon restart, handle endpoint changes on established reverse peer connections
- f2e7307 enable Kit email subscription form
- 0652123 encode and decode published ports using container labels
- 5fe77c6 exclude Docker bridge br-[0-9a-f]{12} interfaces from machine routable IPs
- a4be451 find first available machine for running a service
- 3f7726e fix SlogTextHandler to respect minimum log level
- bee101a fix asset template in .goreleaser config
- 386e4e2 fix context in PullImage
- 6f9fc69 fix corrosion data dir, add reload to systemd unit
- c0dff56 fix filter unmarshalling for list containers
- c275273 fix install.sh to start uncloud.service after installing all systemd units
- 092fe25 fix navbar on mobile
- 0b5dd2f fix network peer configuration when just joining the cluster before store is synced
- e6df331 fix options for machine list command
- 2c0cf28 fix peer status persistence, update status every second
- 042b44c fix port binding for host ports
- 1316dd3 fix proxy Director usage and close on shutdown
- 3ce9c8b fix run command, support 1 replica and global mode
- 190d0de fix warnings on landing
- 2fd1ee2 fix: access to /run/uncloud.sock for a non-root user when initialising a fresh machine
- 2eff7d1 format
- bb77ff9 format
- 8a3f003 format machine command flags
- 11612a8 forward NotFound errors from StartContainer and RemoveContainer
- 5c96f75 generate a name for the service
- 7556f8c generate basic caddy.json with empty http and https servers
- 2b3f325 generate caddy config with routes from published http(s) ports
- 035601d generate container name and assign service labels to container
- 6951221 github and get started links in navbar
- cedafd0 implement ClusterMembershipStates for corrosion admin client
- 9cb4b35 implement PortSpec parsing
- 6d4698f implement Query in corrosion API client
- 88ce2d5 implement RunService for replicated mode with only 1 replica
- 2727c3c implement RunService in global mode and RemoveService
- 93dfa5c implement admin client for Corrosion admin API
- 99c9aab implement more consistent InspectService that broadcasts Docker requests to all machines
- b73577e implement subscription in corrosion client
- 5094149 improve error message for adding machine that already exists in the cluster
- 22bca16 include alpha-numeric random string generation in secret package
- 95175d1 init Dockerfile to run machine in container
- 6eb373e init InspectService method
- 667ecad init clust...
v0.0.1
Changelog
- 58fb310 Cluster service implementation with basic local state and IPAM manager
- afe9c13 Implement grpc server in the daemon to receive cluster requests
- c99cdcd Initial commit
- 92e3b21 add -profile flag
- cc7b4dc add .env file to mise
- 28c73d9 add .goreleaser.yaml config
- e9f4ad7 add Machine gRPC service
- c56f81b add TODO
- a64caf3 add Token RPC endpoint to grab a machine token for adding it to a cluster
- 4e042be add
machine list
command and corresponding RPC endpoint - 3f71aec add
uncloud machine init
command to initialise a new cluster on local machine - 945eff4 add
uncloud machine token
command to print machine token to add machine to cluster - 3f13f6c add cmdexec package to execute commands on remote hosts via SSH
- c37b1f7 add comment
- 3f497b5 add couple TODOs
- da0c9bb add expriment with using talos discovery service
- c103b6e add install.sh script to install uncloudd daemon on a machine
- 222edb7 add machine config
- fd396dd add management IP to machine and peer configs, update daemon to listen on it
- c93206e add network/tunnel package to establish user space WG tunnel to a machine
- cfa2105 add public IP to the end of endpoint list
- fd314bc add ssh destination to connection config
- 3244838 add the initial draft of the design doc
- 41098d0 assign ipv6 address to each machine derived from their public keys
- 8e1e85e basic PoC of using Docker networkdb as a general purpose key-value store
- 73be824 convert systemd unit to Type=notify and report readiness
- a980cb7 create uncloud Linux group in install script
- ea8dfca delete old unused ClusterClient
- d66818e detect if the machine is already initialised
- fb236fb establish SSH connection when adding a new machine
- e6d8a33 experiment: Serf transport for go-ds-crdt
- 43e2bf8 fix concurrent output in install.sh
- fdb277c fix internal/machine package to build on darwin
- f49e91b fix parse token, return out in cmdexec run
- eed2c88 generate user key for new cluster and add it to peers on bootstrap machine
- 9e44d30 implement CLI init cluster, add SSH and WireGuard cluster connectors
- e074b68 implement uncloudd daemon that starts a WireGuard network without peer probing
- b4606b9 init machined cli
- bd53e3f machine add: configure remote machine to join the cluster network
- 6856a77 minor
- 4656bdd minor config refactor and management IP
- 84dd57a minor install.sh
- 7e93abb move InitCluster to Machine
- 69c259a move daemon pkg to top level
- 93a9e32 provision machine when adding it to the cluster
- a599506 reduce log level for WG tunnel
- aad2ac2 refactor Cluster gRPC service, add common type converters from/to netip
- 86d949a refactor Machine to run gRPC server to init cluster
- 03c2c0d refactor cluster connection in CLI
- da72c05 refactor cluster server to initialise state when initialising cluster, allow machine to be reinitialised
- 31e2b84 refactor daemon to use Machine to manage all components
- 5dc0832 refactor network operations into networkController to start/stop when joining/leaving cluster
- 7ef7475 remove redundant logging in install.sh
- 2c46c0a rename Cluster to Server
- 45cacfa rename Machine message to MachineInfo to not conflict with the service name
- c58c99e rename machine config to state
- 4e2640b rename machines to connections in config
- 38c0e65 retrieve nodes from remote peers
- d735d56 run install.sh script when initialising a cluster on the init machine
- ddf7d23 set uncloud group on the unix socket to allow configured non-root users to access it
- 1a5a78e setup Docker network and iptables forwarding when starting machine
- 160a15f split cluster Server into Machine and Server
- 676f22a start WG network when the machine is initialised via RPC call
- 18d5680 temporary disable green
- d369884 uncloud CLI tool and 'machine add' command to bootstrap a new cluster
- 5f790b7 update .gitignore
- c77c34f update .gitignore
- 08bbca3 update README
- ca14e2b update goreleases: release 2 binaries
- 2514c80 update init command to send RPC calls over SSH tunnel
- 47073f0 update network peers when new machine added