* fix(provider): add debug logging
Add a bunch of debug logging calls
* return a swarm service pointer
* revert to service list with status true
* change trace to debug
* --no-verify
* feat: add blocking refresh frequency
The refresh frequency when using the blocking strategy was set to 5 seconds. This is now configurable with a default value of 5 seconds.
* fail ci if codecov fail
* always upload codecov even if ci fails
* remove useless panic
* use fork
* add -short - revert later
* remove short
* publish test results
* test: use httpexpect v2.17 upstream
This change brings the WithRetryPolicyFunc previously implemented in the fork.
* fix e2e test
* extend key duration
* remove parallel
* test(kubernetes): use testcontainers for test
* fix(kubernetes): get state properly reports the workload as down when scaled to 0
* refactor(kubernetes): split provider in multiple files
* refactor(provider): use Instance prefix for actions
* test(testcontainers): use provider.PullImage
* squash
* Revert "test(testcontainers): use provider.PullImage"
This reverts commit 6f958c48a5.
* test: add random generator thread safety
* refactor: move app/theme to pkg/theme
* refactor
* wip
* use dockerindocker
* add providertest
* wip
* wip
* test(docker): get state now uses dind container to test against a real provider
* test(docker): move to docker_test package
* refactor(docker): create container_inspect.go
* test(docker): add more dind test
* test(docker): event test now use docker in docker
* refactor: remove unused instance type props
* refactor test docker
* fix instance list sort
* stabilize test
* remove testcontainers custom config
* chore(deps): bump to go1.24.0
* use proxy-wasm/proxy-wasm-go-sdk
* remove tinygo
* update docker image
* add missing env
* use go tool directive for mockgen
* chore: bump Kong/ngx_wasm_module to pre-release 0.6.0
Thanks to https://github.com/Kong/ngx_wasm_module/issues/682
* fix go mod
* set caddy to go1.23
This feature adds the capability to stop unregistered running instances upon startup.
Previously, you had to stop running instances manually or issue an initial request that will shut down instances afterwards.
With this change, all discovered instances will be shutdown. They need to be registered using labels. E.g.: sablier.enable=true
Fixes#153
* refactor: remove unused default timeout
* feat: add persistent storage
Allows you to save the state to a file and load it upon restarting the app to restore the previous state.
* chore: upgrade to go 1.18
* use tinykv with generics
* build: add "-buildvcs=false" flag
Git is not available in golang:1.18-alpine image
Docker classic IsUp will return false when the container defines a healthcheck and is not healthy, otherwise as soon as it's started it's up.
Docker swarm will check that the number of required tasks is higher than 1, and that the number of running tasks matches the number of desired tasks.
A task is not running when it defines a healthcheck and is not healthy.