 Anton OvchinnikovandGitHub
|
971b21d6c1
|
feat: Implement basic build & push capabilities for services (#68)
* wip: Build experiments
* wip: overall structure for build/push
* ref: Split method, add test fixture
* feat: Basic push functionality
* ref: Better structure and output
* feat: Handle registry auth
* feat: Integrate with deploy
* ref: Split into files
* fix: Modernize push options
|
2025-06-03 21:35:54 +02:00 |
|
Pavel Sviderski
|
6c2759f315
|
feat: add --cpu, --memory, --privileged, --user options for 'service run'
|
2025-04-24 20:30:48 +10:00 |
|
Pavel Sviderski
|
72bf34632f
|
chore: map new container properties to Docker container configs
|
2025-04-24 17:24:58 +10:00 |
|
Pavel Sviderski
|
edad2429c5
|
chore: verify idempotency for compose deploy with volumes
|
2025-04-23 12:03:23 +10:00 |
|
Pavel Sviderski
|
b605a64fbe
|
chore: add e2e compose test with volumes
|
2025-04-23 10:41:24 +10:00 |
|
Pavel Sviderski
|
143e68cc95
|
chore: do not set default volume driver to local, distinguish behaviour when it's set or not
|
2025-04-21 16:53:43 +10:00 |
|
Pavel Sviderski
|
835c310987
|
chore: delete old basic-compose.yaml fixture
|
2025-04-21 12:50:13 +10:00 |
|
Pavel Sviderski
|
5fce84d33c
|
chore: cleanup compose-basic test
|
2025-04-21 12:49:44 +10:00 |
|
Pavel Sviderski
|
f08d9fe405
|
refactor: 'service run' create missing volumes satisfying all placement constraints
|
2025-04-20 19:57:30 +10:00 |
|
Pavel Sviderski
|
f71fc57f34
|
chore: e2e tests for replicated and global deployments with volumes
|
2025-04-18 17:27:34 +10:00 |
|
Pavel Sviderski
|
1acb0ff110
|
chore: implement VolumesConstraint to only schedule on machines with required volumes
|
2025-04-17 21:34:52 +10:00 |
|
Pavel Sviderski
|
f3cb6657ae
|
chore: replace machine filter with placement constraint in service spec
|
2025-04-16 22:04:37 +10:00 |
|
Pavel Sviderski
|
4532b985d4
|
chore: populate ucind cluster machines with IDs
|
2025-04-16 22:01:33 +10:00 |
|
Pavel Sviderski
|
590a1b231f
|
chore(volumes): e2e test when volume doesn't exist
|
2025-04-13 12:43:23 +10:00 |
|
Pavel Sviderski
|
87331a9265
|
chore: add filter to ListMachines
|
2025-04-11 21:26:40 +10:00 |
|
Pavel Sviderski
|
df4ab40e12
|
chore(volumes): add client methods for volume management, e2e test
|
2025-04-10 13:50:08 +10:00 |
|
Pavel Sviderski
|
25b173128a
|
feat(env): support env vars for services (both run command and compose)
|
2025-04-03 18:14:17 +10:00 |
|
Pavel Sviderski
|
0e80f2e5b2
|
chore: replace immutable hash with container spec comparison
|
2025-03-31 15:58:02 +10:00 |
|
Pavel Sviderski
|
64f6a4f3d3
|
chore: use original service spec instead of deriving from container, fixes diff for scale
|
2025-03-30 12:54:36 +10:00 |
|
Pavel Sviderski
|
1cba1eef0a
|
refactor: handle CreateContainer server-side
|
2025-03-28 19:01:19 +10:00 |
|
Pavel Sviderski
|
58b51b974c
|
refactor: postpone spec resolver initialisation when creating Deployment
|
2025-03-24 21:56:30 +10:00 |
|
Pavel Sviderski
|
3910101a88
|
refactor: embed ServiceSpecResolver into Deployment to handle spec only there
|
2025-03-24 20:10:28 +10:00 |
|
Pavel Sviderski
|
7a9d0cf9db
|
refactor: move compose and deploy packages under client
|
2025-03-24 14:41:50 +10:00 |
|
Pavel Sviderski
|
042dd594e0
|
refactor: decouple deploy and compose packages from client dependency
|
2025-03-24 14:38:16 +10:00 |
|
Pavel Sviderski
|
1471a94162
|
refactor(compose): move compose deployment from client to compose pkg
|
2025-03-24 11:11:36 +10:00 |
|
Pavel Sviderski
|
b1abd07dde
|
refactor: move api, client, compose packages to pkg
|
2025-03-22 18:43:00 +10:00 |
|
Pavel Sviderski
|
3757813b20
|
refactor: rename main module to github.com/psviderski/uncloud
|
2025-03-22 18:25:08 +10:00 |
|
Pavel Sviderski
|
041d51b74f
|
refactor: compose deployment with pluggable spec resolver, basic test
|
2025-03-19 16:28:17 +10:00 |
|
Pavel Sviderski
|
fb01604d21
|
fix: recreate containers only if spec changed by comparing spec hash
|
2025-03-19 13:11:04 +10:00 |
|
Pavel Sviderski
|
76129ea056
|
refactor: include service name in deployment plan
|
2025-03-15 19:34:37 +10:00 |
|
Pavel Sviderski
|
0760ba3b18
|
test: replicated deployment with machine filter
|
2025-03-03 11:26:08 +10:00 |
|
Pavel Sviderski
|
0896bd27fb
|
test: basic replicated deployment, prioritise host with the most up-to-date containers
|
2025-03-02 10:23:49 +10:00 |
|
Pavel Sviderski
|
435a794fa5
|
fix: e2e tests
|
2025-02-28 18:00:02 +10:00 |
|
Pavel Sviderski
|
09bea1d12d
|
feat(dns): update ingress records in Uncloud DNS when deploying Caddy
|
2025-02-26 14:23:00 +10:00 |
|
Pavel Sviderski
|
d9897e5d1e
|
feat: set restart policy for all services to always
|
2025-02-19 16:53:55 +10:00 |
|
Pavel Sviderski
|
bcb67a4073
|
refactor: e2e tests for container config validation
|
2025-02-19 15:19:00 +10:00 |
|
Pavel Sviderski
|
e13408d79f
|
feat: allow to filter machines for global service deployments
|
2025-02-17 20:26:40 +10:00 |
|
Pavel Sviderski
|
d0e46186ed
|
feat: look up latest caddy version tag when deploying caddy service
|
2025-02-16 21:10:06 +10:00 |
|
Pavel Sviderski
|
625a8baed3
|
feat: implement 'caddy deploy' command to deploy global service using caddy:latest image
|
2025-02-15 10:51:02 +10:00 |
|
Pavel Sviderski
|
c4398f9f06
|
refactor: deploy global service using Deployment with RollingStrategy
|
2025-02-14 20:45:23 +10:00 |
|
Pavel Sviderski
|
a53fa2c1d8
|
feat: do not redeploy global service if spec hasn't changed
|
2025-02-14 17:49:46 +10:00 |
|
Pavel Sviderski
|
43f28284f1
|
feat: rolling deploy strategy for global service, always recreate
|
2025-02-13 21:32:08 +10:00 |
|
Pavel Sviderski
|
9859be50a6
|
feat: add Deployment, Strategy, Operation primitives to compose service deployments
|
2025-02-12 21:17:30 +10:00 |
|
Pavel Sviderski
|
f209851986
|
feat: progress for removing service(s)
|
2025-02-11 21:21:50 +10:00 |
|
Pavel Sviderski
|
4da51636fd
|
refactor: remove service with StopContainer and RemoveContainer
|
2025-02-11 20:43:31 +10:00 |
|
Pavel Sviderski
|
76a9f8e8b6
|
refactor: client StartContainer pass serviceID
|
2025-02-11 16:47:52 +10:00 |
|
Pavel Sviderski
|
a477db6b16
|
refactor: client CreateContainer and StartContainer methods
|
2025-02-11 15:59:36 +10:00 |
|
Pavel Sviderski
|
04fd1b1425
|
feat: introduce client.Service entity for managing service containers
|
2025-02-10 20:21:42 +10:00 |
|
Pavel Sviderski
|
0652123bc7
|
encode and decode published ports using container labels
|
2024-12-10 19:21:52 +10:00 |
|
Pavel Sviderski
|
1fb8a3d7a0
|
add ListServices method and ls CLI command
|
2024-12-05 17:21:54 +10:00 |
|