diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 580b7546..383ae8e3 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -13,7 +13,7 @@ on: workflow_dispatch: env: GO_VERSION: '1.23.8' - GOLANGCI_LINT_VERSION: '1.60.3' + GOLANGCI_LINT_VERSION: '1.64.8' jobs: git-secrets: runs-on: ubuntu-latest @@ -105,7 +105,19 @@ jobs: run: | sudo ls /etc/cni/net.d sudo rm /etc/cni/net.d/87-podman-bridge.conflist + - name: Verify Rego file presence + run: ls -l ${{ github.workspace }}/docs/sample-rego-policies/example.rego + - name: Set Rego file path + run: echo "REGO_FILE_PATH=${{ github.workspace }}/docs/sample-rego-policies/example.rego" >> $GITHUB_ENV + - name: Start finch-daemon with opa Authz + run: sudo bin/finch-daemon --debug --experimental --rego-file ${{ github.workspace }}/docs/sample-rego-policies/example.rego --skip-rego-perm-check --socket-owner $UID --socket-addr /run/finch.sock --pidfile /run/finch.pid & + - name: Run opa e2e tests + run: sudo -E make test-e2e-opa + - name: Clean up Daemon socket + run: sudo rm /run/finch.sock && sudo rm /run/finch.pid - name: Start finch-daemon run: sudo bin/finch-daemon --debug --socket-owner $UID & - name: Run e2e test run: sudo make test-e2e + - name: Clean up Daemon socket + run: sudo rm /var/run/finch.sock && sudo rm /run/finch.pid diff --git a/Makefile b/Makefile index bef8415e..a567ebed 100644 --- a/Makefile +++ b/Makefile @@ -77,7 +77,7 @@ endif .PHONY: gen-code gen-code: linux rm -rf ./pkg/mocks - GOBIN=$(BIN) go install github.com/golang/mock/mockgen@v1.6.0 + GOBIN=$(BIN) go install go.uber.org/mock/mockgen@v0.5.2 GOBIN=$(BIN) go install golang.org/x/tools/cmd/stringer@v0.31.0 PATH=$(BIN):$(PATH) go generate ./... PATH=$(BIN):$(PATH) mockgen --destination=./mocks/mocks_container/container.go -package=mocks_container github.com/containerd/containerd/v2/client Container @@ -114,6 +114,15 @@ test-e2e: linux TEST_E2E=1 \ $(GINKGO) $(GFLAGS) ./e2e/... +.PHONY: test-e2e-opa +test-e2e-opa: linux + DOCKER_HOST="unix:///run/finch.sock" \ + DOCKER_API_VERSION="v1.41" \ + MIDDLEWARE_E2E=1 \ + TEST_E2E=0 \ + DAEMON_ROOT="$(BIN)/finch-daemon" \ + $(GINKGO) $(GFLAGS) ./e2e/... + .PHONY: licenses licenses: PATH=$(BIN):$(PATH) go-licenses report --template="scripts/third-party-license.tpl" --ignore github.com/runfinch ./... > THIRD_PARTY_LICENSES @@ -126,4 +135,4 @@ coverage: linux .PHONY: release release: linux @echo "$@" - @$(FINCH_DAEMON_PROJECT_ROOT)/scripts/create-releases.sh $(RELEASE_TAG) + @$(FINCH_DAEMON_PROJECT_ROOT)/scripts/create-releases.sh $(RELEASE_TAG) \ No newline at end of file diff --git a/README.md b/README.md index deb95ecb..93612850 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,32 @@ Getting started with Finch Daemon on Linux only requires a few steps: 5. Test any changes with `make test-unit` and `sudo make test-e2e` +## Experimental Features + +Finch Daemon includes experimental features that can be enabled using the `--experimental` flag. These features are under development and may change in future releases. + +### Using Experimental Features + +To enable experimental features, use the `--experimental` flag when starting the daemon: + +```bash +sudo bin/finch-daemon --debug --socket-owner $UID --experimental +``` + +### Current Experimental Features + +#### OPA Authorization Middleware + +The OPA (Open Policy Agent) middleware allows you to define authorization policies for API requests using Rego policy language. This feature requires both the `--experimental` flag and the `--rego-file` flag to be set. + +Example usage: +```bash +sudo bin/finch-daemon --debug --socket-owner $UID --experimental --rego-file /path/to/policy.rego +``` + +For detailed documentation on the OPA middleware, see [opa-middleware.md](docs/opa-middleware.md). + + ## Creating a systemd service If you want finch-daemon to be managed as a systemd service, for benefits like automatic restart if it gets killed, you can configure it as a systemd service on Linux by diff --git a/api/handlers/builder/build_test.go b/api/handlers/builder/build_test.go index 84eac1e8..5a788edf 100644 --- a/api/handlers/builder/build_test.go +++ b/api/handlers/builder/build_test.go @@ -12,7 +12,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/builder/builder_test.go b/api/handlers/builder/builder_test.go index f3eb80d3..2adcc0cd 100644 --- a/api/handlers/builder/builder_test.go +++ b/api/handlers/builder/builder_test.go @@ -10,7 +10,7 @@ import ( "testing" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/attach_test.go b/api/handlers/container/attach_test.go index 9999e244..92812202 100644 --- a/api/handlers/container/attach_test.go +++ b/api/handlers/container/attach_test.go @@ -21,7 +21,7 @@ import ( "github.com/runfinch/finch-daemon/api/types" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/pkg/errors" diff --git a/api/handlers/container/container_test.go b/api/handlers/container/container_test.go index 957c02df..7d488f08 100644 --- a/api/handlers/container/container_test.go +++ b/api/handlers/container/container_test.go @@ -11,7 +11,7 @@ import ( "testing" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/create_test.go b/api/handlers/container/create_test.go index 67da9ea7..5920d9e1 100644 --- a/api/handlers/container/create_test.go +++ b/api/handlers/container/create_test.go @@ -17,7 +17,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" "github.com/containerd/nerdctl/v2/pkg/defaults" "github.com/docker/go-connections/nat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/exec_test.go b/api/handlers/container/exec_test.go index 7ad8ae89..ed32029a 100644 --- a/api/handlers/container/exec_test.go +++ b/api/handlers/container/exec_test.go @@ -11,7 +11,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/get_archive_test.go b/api/handlers/container/get_archive_test.go index 46c5b303..8bbb04ab 100644 --- a/api/handlers/container/get_archive_test.go +++ b/api/handlers/container/get_archive_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/inspect_test.go b/api/handlers/container/inspect_test.go index 1a27fd91..68c20b52 100644 --- a/api/handlers/container/inspect_test.go +++ b/api/handlers/container/inspect_test.go @@ -10,7 +10,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/kill_test.go b/api/handlers/container/kill_test.go index 38cec1f1..2f7af722 100644 --- a/api/handlers/container/kill_test.go +++ b/api/handlers/container/kill_test.go @@ -11,7 +11,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/list_test.go b/api/handlers/container/list_test.go index c9fa1e54..2d9c2afd 100644 --- a/api/handlers/container/list_test.go +++ b/api/handlers/container/list_test.go @@ -11,7 +11,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/logs_test.go b/api/handlers/container/logs_test.go index 98aadbeb..69481417 100644 --- a/api/handlers/container/logs_test.go +++ b/api/handlers/container/logs_test.go @@ -11,7 +11,7 @@ import ( "strings" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/pause_test.go b/api/handlers/container/pause_test.go index 22569b71..ba21a092 100644 --- a/api/handlers/container/pause_test.go +++ b/api/handlers/container/pause_test.go @@ -11,7 +11,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/put_archive_test.go b/api/handlers/container/put_archive_test.go index 3f9c7569..b9d98cf6 100644 --- a/api/handlers/container/put_archive_test.go +++ b/api/handlers/container/put_archive_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/remove_test.go b/api/handlers/container/remove_test.go index 779ec637..b60bbd70 100644 --- a/api/handlers/container/remove_test.go +++ b/api/handlers/container/remove_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/rename_test.go b/api/handlers/container/rename_test.go index d0e29272..ca6fa3e9 100644 --- a/api/handlers/container/rename_test.go +++ b/api/handlers/container/rename_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/restart_test.go b/api/handlers/container/restart_test.go index d333f860..da927edc 100644 --- a/api/handlers/container/restart_test.go +++ b/api/handlers/container/restart_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/start_test.go b/api/handlers/container/start_test.go index ec4ad335..c7c5a7b6 100644 --- a/api/handlers/container/start_test.go +++ b/api/handlers/container/start_test.go @@ -11,7 +11,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/stats_test.go b/api/handlers/container/stats_test.go index 52050a0a..0ed44778 100644 --- a/api/handlers/container/stats_test.go +++ b/api/handlers/container/stats_test.go @@ -12,7 +12,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" dockertypes "github.com/docker/docker/api/types/container" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/stop_test.go b/api/handlers/container/stop_test.go index dd1bd562..03e1f804 100644 --- a/api/handlers/container/stop_test.go +++ b/api/handlers/container/stop_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/container/unpause_test.go b/api/handlers/container/unpause_test.go index ebd3ab6e..057e9953 100644 --- a/api/handlers/container/unpause_test.go +++ b/api/handlers/container/unpause_test.go @@ -11,7 +11,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/distribution/distribution_test.go b/api/handlers/distribution/distribution_test.go index 91f6b7d6..db201901 100644 --- a/api/handlers/distribution/distribution_test.go +++ b/api/handlers/distribution/distribution_test.go @@ -12,7 +12,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" registrytypes "github.com/docker/docker/api/types/registry" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/exec/exec_test.go b/api/handlers/exec/exec_test.go index 5f607b0b..5fea51cc 100644 --- a/api/handlers/exec/exec_test.go +++ b/api/handlers/exec/exec_test.go @@ -11,7 +11,7 @@ import ( "testing" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/exec/inspect_test.go b/api/handlers/exec/inspect_test.go index d6c6018b..e8886f88 100644 --- a/api/handlers/exec/inspect_test.go +++ b/api/handlers/exec/inspect_test.go @@ -10,7 +10,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/exec/resize_test.go b/api/handlers/exec/resize_test.go index 33a8c581..9c35e35e 100644 --- a/api/handlers/exec/resize_test.go +++ b/api/handlers/exec/resize_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/exec/start_test.go b/api/handlers/exec/start_test.go index a4755270..b4c88209 100644 --- a/api/handlers/exec/start_test.go +++ b/api/handlers/exec/start_test.go @@ -16,7 +16,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" hj "github.com/getlantern/httptest" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/image/image_test.go b/api/handlers/image/image_test.go index 0a2f846c..ee4259af 100644 --- a/api/handlers/image/image_test.go +++ b/api/handlers/image/image_test.go @@ -10,7 +10,7 @@ import ( "testing" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/image/inspect_test.go b/api/handlers/image/inspect_test.go index c138a679..259e2710 100644 --- a/api/handlers/image/inspect_test.go +++ b/api/handlers/image/inspect_test.go @@ -11,7 +11,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/image/load_test.go b/api/handlers/image/load_test.go index 166c0569..331ed04d 100644 --- a/api/handlers/image/load_test.go +++ b/api/handlers/image/load_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/image/pull_test.go b/api/handlers/image/pull_test.go index 4b73f38e..883a59d9 100644 --- a/api/handlers/image/pull_test.go +++ b/api/handlers/image/pull_test.go @@ -16,7 +16,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" dockertypes "github.com/docker/cli/cli/config/types" "github.com/docker/docker/pkg/jsonmessage" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/image/push_test.go b/api/handlers/image/push_test.go index 06dd74e5..c7860012 100644 --- a/api/handlers/image/push_test.go +++ b/api/handlers/image/push_test.go @@ -15,7 +15,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" dockertypes "github.com/docker/cli/cli/config/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/image/remove_test.go b/api/handlers/image/remove_test.go index ee688ebe..44753901 100644 --- a/api/handlers/image/remove_test.go +++ b/api/handlers/image/remove_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/network/create_test.go b/api/handlers/network/create_test.go index aa8f185a..8a15e878 100644 --- a/api/handlers/network/create_test.go +++ b/api/handlers/network/create_test.go @@ -13,7 +13,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/network/inspect_test.go b/api/handlers/network/inspect_test.go index 50e27bf8..e4b2cb7d 100644 --- a/api/handlers/network/inspect_test.go +++ b/api/handlers/network/inspect_test.go @@ -11,7 +11,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/network/list_test.go b/api/handlers/network/list_test.go index 902a643f..adbcd33a 100644 --- a/api/handlers/network/list_test.go +++ b/api/handlers/network/list_test.go @@ -8,7 +8,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/network/network_test.go b/api/handlers/network/network_test.go index 442d895c..88b83fd6 100644 --- a/api/handlers/network/network_test.go +++ b/api/handlers/network/network_test.go @@ -11,7 +11,7 @@ import ( "testing" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/network/remove_test.go b/api/handlers/network/remove_test.go index 97778369..6c6b8f85 100644 --- a/api/handlers/network/remove_test.go +++ b/api/handlers/network/remove_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/system/events_test.go b/api/handlers/system/events_test.go index 4c453041..1e754c57 100644 --- a/api/handlers/system/events_test.go +++ b/api/handlers/system/events_test.go @@ -13,7 +13,7 @@ import ( "time" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/system/info_test.go b/api/handlers/system/info_test.go index fc2e4b92..f9a0be27 100644 --- a/api/handlers/system/info_test.go +++ b/api/handlers/system/info_test.go @@ -11,7 +11,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/system/version_test.go b/api/handlers/system/version_test.go index 15086a5e..868a48dd 100644 --- a/api/handlers/system/version_test.go +++ b/api/handlers/system/version_test.go @@ -10,7 +10,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/volume/create_test.go b/api/handlers/volume/create_test.go index 8103f6c1..ba96e0fe 100644 --- a/api/handlers/volume/create_test.go +++ b/api/handlers/volume/create_test.go @@ -11,7 +11,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/volume/inspect_test.go b/api/handlers/volume/inspect_test.go index 30369cc0..027e81c8 100644 --- a/api/handlers/volume/inspect_test.go +++ b/api/handlers/volume/inspect_test.go @@ -10,7 +10,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/volume/list_test.go b/api/handlers/volume/list_test.go index 6be42f96..196011ce 100644 --- a/api/handlers/volume/list_test.go +++ b/api/handlers/volume/list_test.go @@ -12,7 +12,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/config" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/volume/remove_test.go b/api/handlers/volume/remove_test.go index 3a72bd93..81792ad6 100644 --- a/api/handlers/volume/remove_test.go +++ b/api/handlers/volume/remove_test.go @@ -9,7 +9,7 @@ import ( "net/http/httptest" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/handlers/volume/volume_test.go b/api/handlers/volume/volume_test.go index 276514e0..2cb86fe2 100644 --- a/api/handlers/volume/volume_test.go +++ b/api/handlers/volume/volume_test.go @@ -11,7 +11,7 @@ import ( "testing" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/gorilla/mux" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/response/streamwriter_test.go b/api/response/streamwriter_test.go index b07142e8..267a8045 100644 --- a/api/response/streamwriter_test.go +++ b/api/response/streamwriter_test.go @@ -10,7 +10,7 @@ import ( "testing" "github.com/docker/docker/pkg/jsonmessage" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/api/router/router.go b/api/router/router.go index 65066929..b5e703e1 100644 --- a/api/router/router.go +++ b/api/router/router.go @@ -5,6 +5,7 @@ package router import ( "context" + "errors" "fmt" "net/http" "os" @@ -15,6 +16,7 @@ import ( "github.com/moby/moby/api/server/httputils" "github.com/moby/moby/api/types/versions" + "github.com/open-policy-agent/opa/v1/rego" "github.com/runfinch/finch-daemon/api/handlers/builder" "github.com/runfinch/finch-daemon/api/handlers/container" "github.com/runfinch/finch-daemon/api/handlers/distribution" @@ -30,6 +32,14 @@ import ( "github.com/runfinch/finch-daemon/version" ) +var errRego = errors.New("error in rego policy file") +var errInput = errors.New("error in HTTP request") + +type inputRegoRequest struct { + Method string + Path string +} + // Options defines the router options to be passed into the handlers. type Options struct { Config *config.Config @@ -41,6 +51,7 @@ type Options struct { VolumeService volume.Service ExecService exec.Service DistributionService distribution.Service + RegoFilePath string // NerdctlWrapper wraps the interactions with nerdctl to build NerdctlWrapper *backend.NerdctlWrapper @@ -48,12 +59,20 @@ type Options struct { // New creates a new router and registers the handlers to it. Returns a handler object // The struct definitions of the HTTP responses come from https://github.com/moby/moby/tree/master/api/types. -func New(opts *Options) http.Handler { +func New(opts *Options) (http.Handler, error) { r := mux.NewRouter() r.Use(VersionMiddleware) - vr := types.VersionedRouter{Router: r} logger := flog.NewLogrus() + + if opts.RegoFilePath != "" { + regoMiddleware, err := CreateRegoMiddleware(opts.RegoFilePath, logger) + if err != nil { + return nil, err + } + r.Use(regoMiddleware) + } + vr := types.VersionedRouter{Router: r} system.RegisterHandlers(vr, opts.SystemService, opts.Config, opts.NerdctlWrapper, logger) image.RegisterHandlers(vr, opts.ImageService, opts.Config, logger) container.RegisterHandlers(vr, opts.ContainerService, opts.Config, logger) @@ -62,7 +81,7 @@ func New(opts *Options) http.Handler { volume.RegisterHandlers(vr, opts.VolumeService, opts.Config, logger) exec.RegisterHandlers(vr, opts.ExecService, opts.Config, logger) distribution.RegisterHandlers(vr, opts.DistributionService, opts.Config, logger) - return ghandlers.LoggingHandler(os.Stderr, r) + return ghandlers.LoggingHandler(os.Stderr, r), nil } // VersionMiddleware checks for the requested version of the api and makes sure it falls within the bounds @@ -90,3 +109,53 @@ func VersionMiddleware(next http.Handler) http.Handler { next.ServeHTTP(w, newReq) }) } + +// CreateRegoMiddleware dynamically parses the rego file at the path specified in options +// and return a function that allows or denies the request based on the policy. +// Will return a nil function and an error if the given file path is blank or invalid. +func CreateRegoMiddleware(regoFilePath string, logger *flog.Logrus) (func(next http.Handler) http.Handler, error) { + if regoFilePath == "" { + return nil, errRego + } + + query := "data.finch.authz.allow" + nr := rego.New( + rego.Load([]string{regoFilePath}, nil), + rego.Query(query), + ) + + preppedQuery, err := nr.PrepareForEval(context.Background()) + if err != nil { + return nil, err + } + + return func(next http.Handler) http.Handler { + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + input := inputRegoRequest{ + Method: r.Method, + Path: r.URL.Path, + } + + logger.Debugf("OPA input being evaluated: Method=%s, Path=%s", input.Method, input.Path) + + rs, err := preppedQuery.Eval(r.Context(), rego.EvalInput(input)) + if err != nil { + logger.Errorf("OPA policy evaluation failed: %v", err) + response.SendErrorResponse(w, http.StatusInternalServerError, errInput) + return + } + + logger.Debugf("OPA evaluation results: %+v", rs) + + if !rs.Allowed() { + logger.Infof("OPA request denied: Method=%s, Path=%s", r.Method, r.URL.Path) + response.SendErrorResponse(w, http.StatusForbidden, + fmt.Errorf("method %s not allowed for path %s", r.Method, r.URL.Path)) + return + } + logger.Debugf("OPA request allowed: Method=%s, Path=%s", r.Method, r.URL.Path) + newReq := r.WithContext(r.Context()) + next.ServeHTTP(w, newReq) + }) + }, nil +} diff --git a/api/router/router_test.go b/api/router/router_test.go index df4f69f8..2b69ed2b 100644 --- a/api/router/router_test.go +++ b/api/router/router_test.go @@ -8,10 +8,12 @@ import ( "fmt" "net/http" "net/http/httptest" + "os" + "path/filepath" "testing" "github.com/containerd/nerdctl/v2/pkg/config" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" @@ -51,8 +53,9 @@ var _ = Describe("version middleware test", func() { BuilderService: nil, VolumeService: nil, NerdctlWrapper: nil, + RegoFilePath: "", } - h = New(opts) + h, _ = New(opts) rr = httptest.NewRecorder() expected = types.VersionInfo{ Platform: struct { @@ -126,3 +129,69 @@ var _ = Describe("version middleware test", func() { Expect(v).Should(Equal(expected)) }) }) + +// Unit tests for the rego handler. +var _ = Describe("rego middleware test", func() { + var ( + opts *Options + rr *httptest.ResponseRecorder + expected types.VersionInfo + sysSvc *mocks_system.MockService + regoFilePath string + ) + + BeforeEach(func() { + mockCtrl := gomock.NewController(GinkgoT()) + defer mockCtrl.Finish() + + tempDirPath := GinkgoT().TempDir() + regoFilePath = filepath.Join(tempDirPath, "authz.rego") + os.Create(regoFilePath) + + c := config.Config{} + sysSvc = mocks_system.NewMockService(mockCtrl) + opts = &Options{ + Config: &c, + SystemService: sysSvc, + } + rr = httptest.NewRecorder() + expected = types.VersionInfo{} + sysSvc.EXPECT().GetVersion(gomock.Any()).Return(&expected, nil).AnyTimes() + }) + It("should return a 200 error for calls by default", func() { + h, err := New(opts) + Expect(err).Should(BeNil()) + + req, _ := http.NewRequest(http.MethodGet, "/version", nil) + h.ServeHTTP(rr, req) + + Expect(rr).Should(HaveHTTPStatus(http.StatusOK)) + }) + + It("should return a 400 error for disallowed calls", func() { + regoPolicy := `package finch.authz +import rego.v1 + +default allow = false` + + os.WriteFile(regoFilePath, []byte(regoPolicy), 0644) + opts.RegoFilePath = regoFilePath + h, err := New(opts) + Expect(err).Should(BeNil()) + + req, _ := http.NewRequest(http.MethodGet, "/version", nil) + h.ServeHTTP(rr, req) + + Expect(rr).Should(HaveHTTPStatus(http.StatusForbidden)) + }) + + It("should return an error for poorly formed rego files", func() { + regoPolicy := `poorly formed rego file` + + os.WriteFile(regoFilePath, []byte(regoPolicy), 0644) + opts.RegoFilePath = regoFilePath + _, err := New(opts) + + Expect(err).Should(Not(BeNil())) + }) +}) diff --git a/cmd/finch-daemon/main.go b/cmd/finch-daemon/main.go index 314a83f8..ed2f8129 100644 --- a/cmd/finch-daemon/main.go +++ b/cmd/finch-daemon/main.go @@ -43,12 +43,15 @@ const ( ) type DaemonOptions struct { - debug bool - socketAddr string - socketOwner int - debugAddress string - configPath string - pidFile string + debug bool + socketAddr string + socketOwner int + debugAddress string + configPath string + pidFile string + regoFilePath string + enableExperimental bool + skipRegoPermCheck bool } var options = new(DaemonOptions) @@ -67,6 +70,10 @@ func main() { rootCmd.Flags().StringVar(&options.debugAddress, "debug-addr", "", "") rootCmd.Flags().StringVar(&options.configPath, "config-file", defaultConfigPath, "Daemon Config Path") rootCmd.Flags().StringVar(&options.pidFile, "pidfile", defaultPidFile, "pid file location") + rootCmd.Flags().StringVar(&options.regoFilePath, "rego-file", "", "Rego Policy Path (requires --experimental flag)") + rootCmd.Flags().BoolVar(&options.skipRegoPermCheck, "skip-rego-perm-check", false, "skip the rego file permission check (allows permissions more permissive than 0600)") + rootCmd.Flags().BoolVar(&options.enableExperimental, "experimental", false, "enable experimental features") + if err := rootCmd.Execute(); err != nil { log.Printf("got error: %v", err) log.Fatal(err) @@ -215,8 +222,27 @@ func newRouter(options *DaemonOptions, logger *flog.Logrus) (http.Handler, error return nil, err } - opts := createRouterOptions(conf, clientWrapper, ncWrapper, logger) - return router.New(opts), nil + var regoFilePath string + + if options.regoFilePath != "" { + if !options.enableExperimental { + return nil, fmt.Errorf("rego file provided without experimental flag - OPA middleware is an experimental feature, please enable it with '--experimental' flag") + } + regoFilePath, err = checkRegoFileValidity(options, logger) + if err != nil { + return nil, err + } + } else if options.enableExperimental { + // Only experimental flag set + logger.Info("experimental flag passed, but no experimental features enabled") + } + + opts := createRouterOptions(conf, clientWrapper, ncWrapper, logger, regoFilePath) + newRouter, err := router.New(opts) + if err != nil { + return nil, err + } + return newRouter, nil } func handleSignal(socket string, server *http.Server, logger *flog.Logrus) { diff --git a/cmd/finch-daemon/router_utils.go b/cmd/finch-daemon/router_utils.go index 0261f4c4..839eccef 100644 --- a/cmd/finch-daemon/router_utils.go +++ b/cmd/finch-daemon/router_utils.go @@ -7,6 +7,8 @@ import ( "errors" "fmt" "os" + "path/filepath" + "strings" containerd "github.com/containerd/containerd/v2/client" "github.com/containerd/containerd/v2/pkg/namespaces" @@ -96,6 +98,7 @@ func createRouterOptions( clientWrapper *backend.ContainerdClientWrapper, ncWrapper *backend.NerdctlWrapper, logger *flog.Logrus, + regoFilePath string, ) *router.Options { fs := afero.NewOsFs() tarCreator := archive.NewTarCreator(ecc.NewExecCmdCreator(), logger) @@ -112,5 +115,41 @@ func createRouterOptions( ExecService: exec.NewService(clientWrapper, logger), DistributionService: distribution.NewService(clientWrapper, ncWrapper, logger), NerdctlWrapper: ncWrapper, + RegoFilePath: regoFilePath, } } + +// checkRegoFileValidity validates and prepares the Rego policy file for use. +// It verifies that the file exists, has the right extension (.rego), and has appropriate permissions. +func checkRegoFileValidity(options *DaemonOptions, logger *flog.Logrus) (string, error) { + if options.regoFilePath == "" { + return "", fmt.Errorf("rego file path not provided, please provide the policy file path using the --rego-file flag") + } + + if _, err := os.Stat(options.regoFilePath); os.IsNotExist(err) { + return "", fmt.Errorf("provided Rego file path does not exist: %s", options.regoFilePath) + } + + // Check if the file has a valid extension (.rego) + fileExt := strings.ToLower(filepath.Ext(options.regoFilePath)) + + if fileExt != ".rego" { + return "", fmt.Errorf("invalid file extension for Rego file. Only .rego files are supported") + } + + if !options.skipRegoPermCheck { + fileInfo, err := os.Stat(options.regoFilePath) + if err != nil { + return "", fmt.Errorf("error checking rego file permissions: %v", err) + } + + if fileInfo.Mode().Perm()&0177 != 0 { + return "", fmt.Errorf("rego file permissions %o are too permissive (maximum allowable permissions: 0600)", fileInfo.Mode().Perm()) + } + logger.Debugf("rego file permissions check passed: %o", fileInfo.Mode().Perm()) + } else { + logger.Warnf("skipping rego file permission check - file may have permissions more permissive than 0600") + } + + return options.regoFilePath, nil +} diff --git a/cmd/finch-daemon/router_utils_test.go b/cmd/finch-daemon/router_utils_test.go index c5ee9537..b52f9069 100644 --- a/cmd/finch-daemon/router_utils_test.go +++ b/cmd/finch-daemon/router_utils_test.go @@ -5,9 +5,11 @@ package main import ( "os" + "path/filepath" "testing" "github.com/containerd/nerdctl/v2/pkg/config" + "github.com/runfinch/finch-daemon/pkg/flog" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) @@ -71,3 +73,72 @@ namespace = "test_namespace" assert.Equal(t, "test_address", cfg.Address) assert.Equal(t, "test_namespace", cfg.Namespace) } + +func TestCheckRegoFileValidity(t *testing.T) { + logger := flog.NewLogrus() + tests := []struct { + name string + setupFunc func(t *testing.T) (string, func()) + skipPermCheck bool + expectedError string + }{ + { + name: "valid rego file", + setupFunc: func(t *testing.T) (string, func()) { + // Create a temporary directory that will be automatically cleaned up + tmpDir := t.TempDir() + + // Create a file with .rego extension and proper content + regoPath := filepath.Join(tmpDir, "test.rego") + regoContent := `package finch.authz + +import future.keywords.if +import rego.v1 + +default allow = false +` + err := os.WriteFile(regoPath, []byte(regoContent), 0600) + require.NoError(t, err) + + return regoPath, func() {} + }, + expectedError: "", + }, + { + name: "non-existent file", + setupFunc: func(t *testing.T) (string, func()) { + return filepath.Join(os.TempDir(), "nonexistent.rego"), func() {} + }, + expectedError: "provided Rego file path does not exist", + }, + { + name: "wrong extension", + setupFunc: func(t *testing.T) (string, func()) { + tmpFile, err := os.CreateTemp("", "test.txt") + require.NoError(t, err) + return tmpFile.Name(), func() { os.Remove(tmpFile.Name()) } + }, + expectedError: "invalid file extension", + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + filePath, cleanup := tt.setupFunc(t) + defer cleanup() + + options := &DaemonOptions{ + regoFilePath: filePath, + } + path, err := checkRegoFileValidity(options, logger) + + if tt.expectedError != "" { + assert.ErrorContains(t, err, tt.expectedError) + assert.Empty(t, path) + } else { + assert.NoError(t, err) + assert.Equal(t, filePath, path) + } + }) + } +} diff --git a/docs/opa-middleware.md b/docs/opa-middleware.md new file mode 100644 index 00000000..f6caf6ee --- /dev/null +++ b/docs/opa-middleware.md @@ -0,0 +1,167 @@ +# OPA Authorization Middleware (Experimental) + +> ⚠️ **Experimental Feature**: The OPA authorization middleware is being introduced as an experimental feature. + +This guide provides instructions for setting up [OPA](https://github.com/open-policy-agent/opa) authorization policies with the finch-daemon. These policies allow users to allowlist or deny certain resources based on policy rules. + +## Experimental Status + +This feature is being released as experimental because: +- Integration patterns and best practices are still being established +- Performance characteristics are being evaluated + +As an experimental feature: +- Breaking changes may occur in any release +- Long-term backward compatibility is not guaranteed +- Documentation and examples may evolve substantially +- Production use is not recommended at this stage + +## What Is OPA Authz implementation +Open Policy Agent (OPA) is an open-source, general-purpose policy engine that enables unified, context-aware policy enforcement across the entire stack. OPA provides a high-level declarative language, Rego, for specifying policy as code and simple APIs to offload policy decision-making from your software. + +In the current implementation, users can use OPA Rego policies to filter API requests at the Daemon level. It's important to note that the current implementation only supports allowlisting of requests. This means you can specify which requests should be allowed, and all others will be denied by default. + +## Setting up a policy + +Use the [sample rego](../docs/sample-rego-policies/example.rego) policy template to build your policy rules. + +The package name must be `finch.authz`, the daemon middleware will look for the result of the `allow` key on each API call to determine wether to allow/deny the request. +An approved request will go through without any events, a rejected request will fail with status code 403 + +Example: + +The following policy blocks all API requests made to the daemon. +``` +package finch.authz + +default allow = false + +``` +`allow` can be modified based on the business requirements for example we can prevent users from creating new containers by preventing them from accessing the create API + +``` +allow if { + not (input.Method == "POST" and input.Path == "/v1.43/containers/create") +} +``` +Use the [Rego playground](https://play.openpolicyagent.org/) to fine tune your rego policies + +## Enable OPA Middleware + +Once you are ready with your policy document, use the `--experimental` flag to enable experimental features including OPA middleware. The daemon will then look for the policy document provided by the `--rego-file` flag. + +Note: Since OPA middleware is an experimental feature, the `--experimental` flag is required when using `--rego-file`. + +The daemon enforces strict permissions (0600 or more restrictive) on the Rego policy file to prevent unauthorized modifications. You can bypass this check using the `--skip-rego-perm-check` flag. + +Examples: + +Standard secure usage: +```bash +sudo bin/finch-daemon --debug --socket-owner $UID --socket-addr /run/finch-test.sock --pidfile /run/finch-test.pid --experimental --rego-file /path/to/policy.rego +``` + +With permission check bypassed: +```bash +sudo bin/finch-daemon --debug --socket-owner $UID --socket-addr /run/finch-test.sock --pidfile /run/finch-test.pid --experimental --rego-file /path/to/policy.rego --skip-rego-perm-check +``` + +Note: If you enable experimental features with `--experimental` but don't provide a `--rego-file`, the daemon will run without OPA policy evaluation. + + +# Best practices for secure rego policies + +## Comprehensive API Path Protection + +When writing Rego policies, use pattern matching for API paths to prevent unauthorized access. Simple string matching can be bypassed by adding prefixes to API paths. + +Consider this potentially vulnerable policy that tries to restrict access to a specific container: +``` +# INCORRECT: Can be bypassed +allow if { + not (input.Path == "/v1.43/containers/sensitive-container/json") +} +``` +This policy can be bypassed in multiple ways: +1. Using container ID instead of name: `/v1.43/containers/abc123.../json` +2. Adding path prefixes: `/custom/v1.43/containers/sensitive-container/json` + +Follow the path matching best practices below to properly secure your resources. + +## Path Matching Best Practices + +``` +package finch.authz + +import future.keywords.if +import rego.v1 + +# Use pattern matching for comprehensive path protection +is_container_api if { + glob.match("/*/containers/*", [], input.Path) +} + +is_container_create if { + input.Method == "POST" + glob.match("/*/containers/create", [], input.Path) +} + +# Protect against path variations +allow if { + not is_container_api # Blocks all container-related paths + not is_container_create # Specifically blocks container creation +} +``` +Use these [example policies](https://github.com/open-policy-agent/opa-docker-authz/blob/2c7eb5c729fca70a3e5cda6f15c2d9cc121b9481/example.rego) to build your opa policy + +Remember that only `Method` and `Path` is the only values that +gets passed to the opa middleware. + + +### Common Security Pitfalls + +- **Incomplete Path Matching**: Always use pattern matching functions like glob.match() instead of exact string matching to catch path variations. +- **Missing HTTP Methods**: Consider all HTTP methods that could access a resource (GET, POST, PUT, DELETE). +- **Alternative API Endpoints**: Be aware that some operations can be performed through multiple endpoints. + +### Monitoring and Alerting +The finch-daemon's inability to start due to policy issues could impact system operations. Implement System Service Monitoring in order to be on top of any such failures. + +### Security Recommendations +- Policy Testing + - Test policies in a non-production environment + - Use the [rego playground](https://play.openpolicyagent.org/) to test policies +- Logging and Audit + - Enable comprehensive logging of policy decisions + - Monitor for unexpected denials + + +### Critical Security Considerations: Rego Policy File Protection + +### Rego File Permissions +By default, the daemon requires the Rego policy file to have permissions no more permissive than 0600 (readable and writable only by the owner). This restriction helps prevent unauthorized modifications to the policy file. + +The `--skip-rego-perm-check` flag can be used to bypass this permission check. However, using this flag comes with significant security risks: +- More permissive file permissions could allow unauthorized users to modify the policy +- Changes to the policy file could go unnoticed +- Security controls could be weakened without proper oversight + +It is strongly recommended to: +- Avoid using `--skip-rego-perm-check` in production environments +- Always use proper file permissions (0600 or more restrictive) +- Implement additional monitoring if the flag must be used + +The Rego policy file is a critical security control. +Any user with sudo privileges can: + +- Modify the policy file to weaken security controls +- Replace the policy with a more permissive version +- Disable policy enforcement entirely + +#### Recomended Security Controls + +- Access Controls + - Restrict sudo access to specific commands +- Monitoring + - Monitor policy file changes + - Monitor daemon service status diff --git a/docs/sample-rego-policies/example.rego b/docs/sample-rego-policies/example.rego new file mode 100644 index 00000000..37f48f9e --- /dev/null +++ b/docs/sample-rego-policies/example.rego @@ -0,0 +1,43 @@ +# This is an experimental preview policy example. +# As this feature is under active development: +# - Breaking changes may occur without notice +# - Production use is not recommended + +package finch.authz + +import future.keywords.if +import rego.v1 + +default allow = false + +allow if { + not is_container_create + not is_networks_api + not is_swarm_api + not is_plugins +} + +is_container_create if { + input.Method == "POST" + glob.match("/**/containers/create", ["/"], input.Path) +} + +is_networks_api if { + input.Method == "GET" + glob.match("/**/networks", ["/"], input.Path) +} + +is_swarm_api if { + input.Method == "GET" + glob.match("/**/swarm", ["/"], input.Path) +} + +is_plugins if { + input.Method == "GET" + glob.match("/**/plugins", ["/"], input.Path) +} + +is_forbidden_container if { + input.Method == "GET" + glob.match("/**/container/1f576a797a486438548377124f6cb7770a5cb7c8ff6a11c069cb4128d3f59462/json", ["/"], input.Path) +} diff --git a/e2e/e2e_test.go b/e2e/e2e_test.go index 0d82caec..b3918bed 100644 --- a/e2e/e2e_test.go +++ b/e2e/e2e_test.go @@ -19,23 +19,36 @@ import ( "github.com/runfinch/finch-daemon/e2e/util" ) -// Subject defines which CLI the tests are run against, defaults to \"nerdctl\" in the user's PATH. -var Subject = flag.String("subject", "nerdctl", `which CLI the tests are run against, defaults to "nerdctl" in the user's PATH.`) -var SubjectPrefix = flag.String("daemon-context-subject-prefix", "", `A string which prefixes the command the tests are run against, defaults to "". This string will be split by spaces.`) -var PrefixedSubjectEnv = flag.String("daemon-context-subject-env", "", `Environment to add when running a prefixed subject, in the form of a string like "EXAMPLE=foo EXAMPLE2=bar"`) +const ( + defaultNamespace = "finch" + testE2EEnv = "TEST_E2E" + middlewareE2EEnv = "MIDDLEWARE_E2E" + opaTestDescription = "Finch Daemon OPA E2E Tests" + e2eTestDescription = "Finch Daemon Functional test" +) -func TestRun(t *testing.T) { - if os.Getenv("TEST_E2E") != "1" { - t.Skip("E2E tests skipped. Set TEST_E2E=1 to run these tests") - } +var ( + Subject = flag.String("subject", "nerdctl", `which CLI the tests are run against, defaults to "nerdctl" in the user's PATH.`) + SubjectPrefix = flag.String("daemon-context-subject-prefix", "", `A string which prefixes the command the tests are run against, defaults to "". This string will be split by spaces.`) + PrefixedSubjectEnv = flag.String("daemon-context-subject-env", "", `Environment to add when running a prefixed subject, in the form of a string like "EXAMPLE=foo EXAMPLE2=bar"`) +) - if err := parseTestFlags(); err != nil { - log.Println("failed to parse go test flags", err) - os.Exit(1) +func TestRun(t *testing.T) { + switch { + case os.Getenv(middlewareE2EEnv) == "1": + runOPATests(t) + case os.Getenv(testE2EEnv) == "1": + runE2ETests(t) + default: + t.Skip("E2E tests skipped. Set TEST_E2E=1 to run regular E2E tests or MIDDLEWARE_E2E=1 to run OPA middleware tests") } +} - opt, _ := option.New([]string{*Subject, "--namespace", "finch"}) +func createTestOption() (*option.Option, error) { + return option.New([]string{*Subject, "--namespace", defaultNamespace}) +} +func setupTestSuite(opt *option.Option) { ginkgo.SynchronizedBeforeSuite(func() []byte { tests.SetupLocalRegistry(opt) return nil @@ -43,66 +56,123 @@ func TestRun(t *testing.T) { ginkgo.SynchronizedAfterSuite(func() { tests.CleanupLocalRegistry(opt) - // clean up everything after the local registry is cleaned up command.RemoveAll(opt) }, func() {}) +} - var pOpt = option.New - if *SubjectPrefix != "" { - var modifiers []option.Modifier - if *PrefixedSubjectEnv != "" { - modifiers = append(modifiers, option.Env(strings.Split(*PrefixedSubjectEnv, " "))) - } - pOpt = util.WrappedOption(strings.Split(*SubjectPrefix, " "), modifiers...) +func runOPATests(t *testing.T) { + if err := parseTestFlags(); err != nil { + log.Fatal("failed to parse go test flags:", err) + } + + opt, err := createTestOption() + if err != nil { + log.Fatal("failed to create test option:", err) + } + + setupTestSuite(opt) + + ginkgo.Describe(opaTestDescription, func() { + tests.OpaMiddlewareTest(opt) + }) + + runTests(t, opaTestDescription) +} + +func runE2ETests(t *testing.T) { + if err := parseTestFlags(); err != nil { + log.Fatal("failed to parse go test flags:", err) + } + + opt, err := createTestOption() + if err != nil { + log.Fatal("failed to create test option:", err) } - const description = "Finch Daemon Functional test" - ginkgo.Describe(description, func() { - // functional test for container APIs - tests.ContainerCreate(opt, pOpt) - tests.ContainerStart(opt) - tests.ContainerStop(opt) - tests.ContainerRestart(opt) - tests.ContainerRemove(opt) - tests.ContainerList(opt) - tests.ContainerRename(opt) - tests.ContainerStats(opt) - tests.ContainerAttach(opt) - tests.ContainerLogs(opt) - tests.ContainerKill(opt) - tests.ContainerInspect(opt) - tests.ContainerWait(opt) - tests.ContainerPause(opt) - tests.ContainerUnpause(opt) - - // functional test for volume APIs - tests.VolumeList(opt) - tests.VolumeInspect(opt) - tests.VolumeRemove(opt) - - // functional test for network APIs - tests.NetworkCreate(opt, pOpt) - tests.NetworkRemove(opt) - tests.NetworkList(opt) - tests.NetworkInspect(opt) - - // functional test for image APIs - tests.ImageRemove(opt) - tests.ImagePush(opt) - tests.ImagePull(opt) - - // functional test for system api - tests.SystemVersion(opt) - tests.SystemEvents(opt) - - // functional test for distribution api - tests.DistributionInspect(opt) + setupTestSuite(opt) + + pOpt := createPrefixedOption() + + ginkgo.Describe(e2eTestDescription, func() { + runContainerTests(opt, pOpt) + runVolumeTests(opt) + runNetworkTests(opt, pOpt) + runImageTests(opt) + runSystemTests(opt) + runDistributionTests(opt) }) + runTests(t, e2eTestDescription) +} + +func createPrefixedOption() func([]string, ...option.Modifier) (*option.Option, error) { + if *SubjectPrefix == "" { + return option.New + } + + var modifiers []option.Modifier + if *PrefixedSubjectEnv != "" { + modifiers = append(modifiers, option.Env(strings.Split(*PrefixedSubjectEnv, " "))) + } + return util.WrappedOption(strings.Split(*SubjectPrefix, " "), modifiers...) +} + +func runTests(t *testing.T, description string) { gomega.RegisterFailHandler(ginkgo.Fail) ginkgo.RunSpecs(t, description) } +// functional test for container APIs. +func runContainerTests(opt *option.Option, pOpt func([]string, ...option.Modifier) (*option.Option, error)) { + tests.ContainerCreate(opt, pOpt) + tests.ContainerStart(opt) + tests.ContainerStop(opt) + tests.ContainerRestart(opt) + tests.ContainerRemove(opt) + tests.ContainerList(opt) + tests.ContainerRename(opt) + tests.ContainerStats(opt) + tests.ContainerAttach(opt) + tests.ContainerLogs(opt) + tests.ContainerKill(opt) + tests.ContainerInspect(opt) + tests.ContainerWait(opt) + tests.ContainerPause(opt) +} + +// functional test for volume APIs. +func runVolumeTests(opt *option.Option) { + tests.VolumeList(opt) + tests.VolumeInspect(opt) + tests.VolumeRemove(opt) +} + +// functional test for network APIs. +func runNetworkTests(opt *option.Option, pOpt func([]string, ...option.Modifier) (*option.Option, error)) { + tests.NetworkCreate(opt, pOpt) + tests.NetworkRemove(opt) + tests.NetworkList(opt) + tests.NetworkInspect(opt) +} + +// functional test for image APIs. +func runImageTests(opt *option.Option) { + tests.ImageRemove(opt) + tests.ImagePush(opt) + tests.ImagePull(opt) +} + +// . +func runSystemTests(opt *option.Option) { + tests.SystemVersion(opt) + tests.SystemEvents(opt) +} + +// functional test for distribution api. +func runDistributionTests(opt *option.Option) { + tests.DistributionInspect(opt) +} + // parseTestFlags parses go test flags because pflag package ignores flags with '-test.' prefix // Related issues: // https://github.com/spf13/pflag/issues/63 diff --git a/e2e/tests/opa_middleware.go b/e2e/tests/opa_middleware.go new file mode 100644 index 00000000..24f5001c --- /dev/null +++ b/e2e/tests/opa_middleware.go @@ -0,0 +1,155 @@ +// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +// SPDX-License-Identifier: Apache-2.0 + +package tests + +import ( + "bytes" + "encoding/json" + "fmt" + "net/http" + "os" + "os/exec" + "path/filepath" + "time" + + . "github.com/onsi/ginkgo/v2" + . "github.com/onsi/gomega" + "github.com/runfinch/common-tests/command" + "github.com/runfinch/common-tests/option" + + "github.com/runfinch/finch-daemon/api/types" + "github.com/runfinch/finch-daemon/e2e/client" +) + +// OpaMiddlewareTest tests the OPA functionality. +func OpaMiddlewareTest(opt *option.Option) { + Describe("test opa middleware functionality", func() { + var ( + uClient *http.Client + version string + wantContainerName string + containerCreateOptions types.ContainerCreateRequest + createUrl string + unimplementedUnspecifiedUrl string + unimplementedSpecifiedUrl string + ) + BeforeEach(func() { + // create a custom client to use http over unix sockets + uClient = client.NewClient(GetDockerHostUrl()) + // get the docker api version that will be tested + version = GetDockerApiVersion() + wantContainerName = fmt.Sprintf("/%s", testContainerName) + // set default container containerCreateOptions + containerCreateOptions = types.ContainerCreateRequest{} + containerCreateOptions.Image = defaultImage + createUrl = client.ConvertToFinchUrl(version, "/containers/create") + unimplementedUnspecifiedUrl = client.ConvertToFinchUrl(version, "/secrets") + unimplementedSpecifiedUrl = client.ConvertToFinchUrl(version, "/swarm") + }) + AfterEach(func() { + command.RemoveAll(opt) + }) + It("should allow GET version API request", func() { + res, err := uClient.Get(client.ConvertToFinchUrl("", "/version")) + Expect(err).ShouldNot(HaveOccurred()) + jd := json.NewDecoder(res.Body) + var v types.VersionInfo + err = jd.Decode(&v) + Expect(err).ShouldNot(HaveOccurred()) + Expect(v.Version).ShouldNot(BeNil()) + Expect(v.ApiVersion).Should(Equal("1.43")) + fmt.Println(version) + }) + + It("shold allow GET containers API request", func() { + id := command.StdoutStr(opt, "run", "-d", "--name", testContainerName, defaultImage, "sleep", "infinity") + want := []types.ContainerListItem{ + { + Id: id[:12], + Names: []string{wantContainerName}, + }, + } + + res, err := uClient.Get(client.ConvertToFinchUrl(version, "/containers/json")) + Expect(err).Should(BeNil()) + Expect(res.StatusCode).Should(Equal(http.StatusOK)) + var got []types.ContainerListItem + err = json.NewDecoder(res.Body).Decode(&got) + Expect(err).Should(BeNil()) + Expect(len(got)).Should(Equal(2)) + got = filterContainerList(got) + Expect(got).Should(ContainElements(want)) + }) + + It("shold disallow POST containers/create API request", func() { + containerCreateOptions.Cmd = []string{"echo", "hello world"} + + reqBody, err := json.Marshal(containerCreateOptions) + Expect(err).Should(BeNil()) + + fmt.Println("createUrl = ", createUrl) + res, _ := uClient.Post(createUrl, "application/json", bytes.NewReader(reqBody)) + + Expect(res.StatusCode).Should(Equal(http.StatusForbidden)) + }) + + It("should fail unimplemented API calls, fail via daemon", func() { + fmt.Println("incompatibleUrl = ", unimplementedUnspecifiedUrl) + res, _ := uClient.Get(unimplementedUnspecifiedUrl) + + Expect(res.StatusCode).Should(Equal(http.StatusNotFound)) + }) + + It("should fail non implemented API calls,even if specified in the rego file", func() { + fmt.Println("incompatibleUrl = ", unimplementedSpecifiedUrl) + res, _ := uClient.Get(unimplementedSpecifiedUrl) + + Expect(res.StatusCode).Should(Equal(http.StatusNotFound)) + }) + + // Add this test to OpaMiddlewareTest function + It("should handle rego file permissions correctly", func() { + // Create a temporary rego file with overly permissive permissions + tmpDir := GinkgoT().TempDir() + + regoPath := filepath.Join(tmpDir, "test.rego") + regoContent := []byte(`package finch.authz + default allow = false`) + + var err error + err = os.WriteFile(regoPath, regoContent, 0644) + Expect(err).NotTo(HaveOccurred()) + + // Try to start daemon with overly permissive file + cmd := exec.Command(GetFinchDaemonExe(), //nolint:gosec // G204: This is a test file with controlled inputs + "--socket-addr", "/run/test.sock", + "--pidfile", "/run/test.pid", + "--rego-file", regoPath, + "--experimental") + err = cmd.Run() + + // Should fail due to permissions + Expect(err).To(HaveOccurred()) + + // For the second test with skip-check: + cmd = exec.Command(GetFinchDaemonExe(), //nolint:gosec // G204: This is a test file with controlled inputs + "--socket-addr", "/run/test.sock", + "--pidfile", "/run/test.pid", + "--rego-file", regoPath, + "--experimental", + "--skip-rego-perm-check") + + // Start the process in background + err = cmd.Start() + Expect(err).NotTo(HaveOccurred()) + + // Give it a moment to initialize + time.Sleep(1 * time.Second) + + // Kill the process + err = cmd.Process.Kill() + Expect(err).NotTo(HaveOccurred()) + }) + }) +} diff --git a/e2e/tests/tests.go b/e2e/tests/tests.go index 932827a0..c26f0d67 100644 --- a/e2e/tests/tests.go +++ b/e2e/tests/tests.go @@ -226,3 +226,11 @@ func GetFinchExe() string { } return finchexe } + +func GetFinchDaemonExe() string { + daemonPath := os.Getenv("DAEMON_ROOT") + if daemonPath == "" { + daemonPath = "./bin/finch-daemon" // fallback + } + return daemonPath +} diff --git a/go.mod b/go.mod index e6fbd2c6..70108905 100644 --- a/go.mod +++ b/go.mod @@ -5,11 +5,12 @@ go 1.23.8 require ( github.com/containerd/cgroups/v3 v3.0.5 github.com/containerd/containerd/api v1.9.0 - github.com/containerd/containerd/v2 v2.0.4 + github.com/containerd/containerd/v2 v2.1.1 github.com/containerd/errdefs v1.0.0 github.com/containerd/fifo v1.1.0 github.com/containerd/go-cni v1.1.12 - github.com/containerd/nerdctl/v2 v2.0.4 + github.com/containerd/log v0.1.0 + github.com/containerd/nerdctl/v2 v2.1.2 github.com/containerd/platforms v1.0.0-rc.1 github.com/containerd/typeurl/v2 v2.2.3 github.com/containernetworking/cni v1.3.0 @@ -22,7 +23,6 @@ require ( github.com/docker/go-units v0.5.0 github.com/getlantern/httptest v0.0.0-20161025015934-4b40f4c7e590 github.com/gofrs/flock v0.12.1 - github.com/golang/mock v1.6.0 github.com/gorilla/handlers v1.5.2 github.com/gorilla/mux v1.8.1 github.com/moby/go-archive v0.1.0 @@ -40,44 +40,65 @@ require ( github.com/spf13/afero v1.14.0 github.com/spf13/cobra v1.9.1 github.com/stretchr/testify v1.10.0 - github.com/vishvananda/netlink v1.3.0 + github.com/vishvananda/netlink v1.3.1 github.com/vishvananda/netns v0.0.5 - golang.org/x/net v0.39.0 + go.uber.org/mock v0.5.2 + golang.org/x/net v0.40.0 golang.org/x/sys v0.33.0 google.golang.org/protobuf v1.36.6 ) require ( - github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6 // indirect - github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20231105174938-2b5cbb29f3e2 // indirect + github.com/OneOfOne/xxhash v1.2.8 // indirect + github.com/agnivade/levenshtein v1.2.0 // indirect + github.com/beorn7/perks v1.0.1 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect + github.com/go-ini/ini v1.67.0 // indirect + github.com/gobwas/glob v0.2.3 // indirect + github.com/google/uuid v1.6.0 // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/prometheus/client_golang v1.22.0 // indirect + github.com/prometheus/client_model v0.6.1 // indirect + github.com/prometheus/common v0.62.0 // indirect + github.com/prometheus/procfs v0.15.1 // indirect + github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0 // indirect + github.com/tchap/go-patricia/v2 v2.3.2 // indirect + github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect + github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect + github.com/yashtewari/glob-intersection v0.2.0 // indirect + go.opentelemetry.io/auto/sdk v1.1.0 // indirect + go.opentelemetry.io/otel/sdk v1.35.0 // indirect + sigs.k8s.io/yaml v1.4.0 // indirect +) + +require ( github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect github.com/Masterminds/semver/v3 v3.3.1 // indirect github.com/Microsoft/go-winio v0.6.2 // indirect - github.com/Microsoft/hcsshim v0.12.9 // indirect + github.com/Microsoft/hcsshim v0.13.0 // indirect github.com/cilium/ebpf v0.16.0 // indirect github.com/containerd/accelerated-container-image v1.3.0 // indirect - github.com/containerd/console v1.0.4 // indirect + github.com/containerd/console v1.0.5 // indirect github.com/containerd/continuity v0.4.5 // indirect github.com/containerd/errdefs/pkg v0.3.0 // indirect github.com/containerd/go-runc v1.1.0 // indirect github.com/containerd/imgcrypt/v2 v2.0.1 // indirect - github.com/containerd/log v0.1.0 // indirect - github.com/containerd/nydus-snapshotter v0.15.0 // indirect + github.com/containerd/nydus-snapshotter v0.15.1 // indirect github.com/containerd/plugin v1.0.0 // indirect github.com/containerd/stargz-snapshotter v0.16.3 // indirect github.com/containerd/stargz-snapshotter/estargz v0.16.3 // indirect github.com/containerd/stargz-snapshotter/ipfs v0.16.3 // indirect github.com/containerd/ttrpc v1.2.7 // indirect - github.com/containernetworking/plugins v1.6.2 // indirect + github.com/containernetworking/plugins v1.7.1 // indirect github.com/containers/ocicrypt v1.2.1 // indirect github.com/cyphar/filepath-securejoin v0.4.1 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/djherbis/times v1.6.0 // indirect github.com/docker/docker-credential-helpers v0.8.2 // indirect - github.com/fahedouch/go-logrotate v0.2.1 // indirect + github.com/fahedouch/go-logrotate v0.3.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect - github.com/fluent/fluent-logger-golang v1.9.0 // indirect - github.com/fsnotify/fsnotify v1.8.0 // indirect + github.com/fluent/fluent-logger-golang v1.10.0 // indirect + github.com/fsnotify/fsnotify v1.9.0 // indirect github.com/getlantern/mockconn v0.0.0-20200818071412-cb30d065a848 // indirect github.com/go-jose/go-jose/v4 v4.0.5 // indirect github.com/go-logr/logr v1.4.2 // indirect @@ -117,36 +138,41 @@ require ( github.com/multiformats/go-multibase v0.2.0 // indirect github.com/multiformats/go-multihash v0.2.3 // indirect github.com/multiformats/go-varint v0.0.7 // indirect - github.com/opencontainers/selinux v1.11.1 // indirect + github.com/open-policy-agent/opa v1.1.0 + github.com/opencontainers/runtime-tools v0.9.1-0.20221107090550-2e043c6bd626 // indirect + github.com/opencontainers/selinux v1.12.0 // indirect github.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7 // indirect - github.com/philhofer/fwd v1.1.3-0.20240612014219-fbbf4953d986 // indirect + github.com/philhofer/fwd v1.1.3-0.20240916144458-20a13a1f6b7c // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect - github.com/rogpeppe/go-internal v1.12.0 // indirect github.com/rootless-containers/bypass4netns v0.4.2 // indirect - github.com/rootless-containers/rootlesskit/v2 v2.3.4 // indirect + github.com/rootless-containers/rootlesskit/v2 v2.3.5 // indirect github.com/sasha-s/go-deadlock v0.3.5 // indirect github.com/smallstep/pkcs7 v0.1.1 // indirect github.com/spaolacci/murmur3 v1.1.0 // indirect github.com/spf13/pflag v1.0.6 // indirect github.com/stefanberger/go-pkcs11uri v0.0.0-20230803200340-78284954bff6 // indirect - github.com/tinylib/msgp v1.2.0 // indirect + github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635 // indirect + github.com/tinylib/msgp v1.3.0 // indirect github.com/vbatts/tar-split v0.11.6 // indirect github.com/yuchanns/srslog v1.1.0 // indirect go.opencensus.io v0.24.0 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 // indirect - go.opentelemetry.io/otel v1.31.0 // indirect - go.opentelemetry.io/otel/metric v1.31.0 // indirect - go.opentelemetry.io/otel/trace v1.31.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 // indirect + go.opentelemetry.io/otel v1.35.0 // indirect + go.opentelemetry.io/otel/metric v1.35.0 // indirect + go.opentelemetry.io/otel/trace v1.35.0 // indirect go.uber.org/automaxprocs v1.6.0 // indirect - golang.org/x/crypto v0.37.0 // indirect + golang.org/x/crypto v0.38.0 // indirect golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f // indirect - golang.org/x/sync v0.13.0 // indirect - golang.org/x/term v0.31.0 // indirect - golang.org/x/text v0.24.0 // indirect - golang.org/x/time v0.8.0 // indirect + golang.org/x/mod v0.24.0 // indirect + golang.org/x/sync v0.14.0 // indirect + golang.org/x/term v0.32.0 // indirect + golang.org/x/text v0.25.0 // indirect + golang.org/x/time v0.9.0 // indirect golang.org/x/tools v0.31.0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20250106144421-5f5ef82da422 // indirect - google.golang.org/grpc v1.69.4 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a // indirect + google.golang.org/grpc v1.72.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/blake3 v1.3.0 // indirect + tags.cncf.io/container-device-interface v1.0.1 // indirect + tags.cncf.io/container-device-interface/specs-go v1.0.0 // indirect ) diff --git a/go.sum b/go.sum index 4f9cf008..61e6d23c 100644 --- a/go.sum +++ b/go.sum @@ -1,38 +1,50 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6 h1:He8afgbRMd7mFxO99hRNu+6tazq8nFF9lIwo9JFroBk= github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= -github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20231105174938-2b5cbb29f3e2 h1:dIScnXFlF784X79oi7MzVT6GWqr/W1uUt0pB5CsDs9M= -github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20231105174938-2b5cbb29f3e2/go.mod h1:gCLVsLfv1egrcZu+GoJATN5ts75F2s62ih/457eWzOw= github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c h1:udKWzYgxTojEKWjV8V+WSxDXJ4NFATAsZjh8iIbsQIg= github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= -github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg= +github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/Masterminds/semver/v3 v3.3.1 h1:QtNSWtVZ3nBfk8mAOu/B6v7FMJ+NHTIgUPi7rj+4nv4= github.com/Masterminds/semver/v3 v3.3.1/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= -github.com/Microsoft/hcsshim v0.12.9 h1:2zJy5KA+l0loz1HzEGqyNnjd3fyZA31ZBCGKacp6lLg= -github.com/Microsoft/hcsshim v0.12.9/go.mod h1:fJ0gkFAna6ukt0bLdKB8djt4XIJhF/vEPuoIWYVvZ8Y= -github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869 h1:DDGfHa7BWjL4YnC6+E63dPcxHo2sUxDIu8g3QgEJdRY= -github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= +github.com/Microsoft/hcsshim v0.13.0 h1:/BcXOiS6Qi7N9XqUcv27vkIuVOkBEcWstd2pMlWSeaA= +github.com/Microsoft/hcsshim v0.13.0/go.mod h1:9KWJ/8DgU+QzYGupX4tzMhRQE8h6w90lH6HAaclpEok= +github.com/OneOfOne/xxhash v1.2.8 h1:31czK/TI9sNkxIKfaUfGlU47BAxQ0ztGgd9vPyqimf8= +github.com/OneOfOne/xxhash v1.2.8/go.mod h1:eZbhyaAYD41SGSSsnmcpxVoRiQ/MPUTjUdIIOT9Um7Q= +github.com/agnivade/levenshtein v1.2.0 h1:U9L4IOT0Y3i0TIlUIDJ7rVUziKi/zPbrJGaFrtYH3SY= +github.com/agnivade/levenshtein v1.2.0/go.mod h1:QVVI16kDrtSuwcpd0p1+xMC6Z/VfhtCyDIjcwga4/DU= +github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0 h1:jfIu9sQUG6Ig+0+Ap1h4unLjW6YQJpKZVmUzxsD4E/Q= +github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0/go.mod h1:t2tdKJDJF9BV14lnkjHmOQgcvEKgtqs5a1N3LNdJhGE= +github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM= +github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= +github.com/bytecodealliance/wasmtime-go/v3 v3.0.2 h1:3uZCA/BLTIu+DqCfguByNMJa2HVHpXvjfy0Dy7g6fuA= +github.com/bytecodealliance/wasmtime-go/v3 v3.0.2/go.mod h1:RnUjnIXxEJcL6BgCvNyzCCRzZcxCgsZCi+RNlvYor5Q= +github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= +github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cilium/ebpf v0.16.0 h1:+BiEnHL6Z7lXnlGUsXQPPAE7+kenAd4ES8MQ5min0Ok= github.com/cilium/ebpf v0.16.0/go.mod h1:L7u2Blt2jMM/vLAVgjxluxtBKlz3/GWjB0dMOEngfwE= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= -github.com/compose-spec/compose-go/v2 v2.4.9 h1:2K4TDw+1ba2idiR6empXHKRXvWYpnvAKoNQy93/sSOs= -github.com/compose-spec/compose-go/v2 v2.4.9/go.mod h1:6k5l/0TxCg0/2uLEhRVEsoBWBprS2uvZi32J7xub3lo= +github.com/compose-spec/compose-go/v2 v2.6.3 h1:zfW1Qp605ESySyth/zR+6yLr55XE0AiOAUlZLHKMoW0= +github.com/compose-spec/compose-go/v2 v2.6.3/go.mod h1:vPlkN0i+0LjLf9rv52lodNMUTJF5YHVfHVGLLIP67NA= github.com/containerd/accelerated-container-image v1.3.0 h1:sFbTgSuMboeKHa9f7MY11hWF1XxVWjFoiTsXYtOtvdU= github.com/containerd/accelerated-container-image v1.3.0/go.mod h1:EvKVWor6ZQNUyYp0MZm5hw4k21ropuz7EegM+m/Jb/Q= github.com/containerd/cgroups/v3 v3.0.5 h1:44na7Ud+VwyE7LIoJ8JTNQOa549a8543BmzaJHo6Bzo= github.com/containerd/cgroups/v3 v3.0.5/go.mod h1:SA5DLYnXO8pTGYiAHXz94qvLQTKfVM5GEVisn4jpins= -github.com/containerd/console v1.0.4 h1:F2g4+oChYvBTsASRTz8NP6iIAi97J3TtSAsLbIFn4ro= -github.com/containerd/console v1.0.4/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk= +github.com/containerd/console v1.0.5 h1:R0ymNeydRqH2DmakFNdmjR2k0t7UPuiOV/N/27/qqsc= +github.com/containerd/console v1.0.5/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk= github.com/containerd/containerd/api v1.9.0 h1:HZ/licowTRazus+wt9fM6r/9BQO7S0vD5lMcWspGIg0= github.com/containerd/containerd/api v1.9.0/go.mod h1:GhghKFmTR3hNtyznBoQ0EMWr9ju5AqHjcZPsSpTKutI= -github.com/containerd/containerd/v2 v2.0.4 h1:+r7yJMwhTfMm3CDyiBjMBQO8a9CTBxL2Bg/JtqtIwB8= -github.com/containerd/containerd/v2 v2.0.4/go.mod h1:5j9QUUaV/cy9ZeAx4S+8n9ffpf+iYnEj4jiExgcbuLY= +github.com/containerd/containerd/v2 v2.1.1 h1:znnkm7Ajz8lg8BcIPMhc/9yjBRN3B+OkNKqKisKfwwM= +github.com/containerd/containerd/v2 v2.1.1/go.mod h1:zIfkQj4RIodclYQkX7GSSswSwgP8d/XxDOtOAoSDIGU= github.com/containerd/continuity v0.4.5 h1:ZRoN1sXq9u7V6QoHMcVWGhOwDFqZ4B9i5H6un1Wh0x4= github.com/containerd/continuity v0.4.5/go.mod h1:/lNJvtJKUQStBzpVQ1+rasXO1LAWtUQssk28EZvJ3nE= github.com/containerd/errdefs v1.0.0 h1:tg5yIfIlQIrxYtu9ajqY42W3lpS19XqdxRQeEwYG8PI= @@ -49,10 +61,10 @@ github.com/containerd/imgcrypt/v2 v2.0.1 h1:gQcmeCKA97fAl0wlpq0itSY/PagFBsn4/mlK github.com/containerd/imgcrypt/v2 v2.0.1/go.mod h1:/qIJL8nxzdzMA2n5iYyyuIY36KfoVQWmgTWdfVtyebM= github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= -github.com/containerd/nerdctl/v2 v2.0.4 h1:Ll0nsizkvTUMc2PAwXy90je0PAeYLEIvggDSisRRmyk= -github.com/containerd/nerdctl/v2 v2.0.4/go.mod h1:YapMqyk+PZ7pDrWUfvuTHQTS1N0pmq+ZIYFwNWgqNFs= -github.com/containerd/nydus-snapshotter v0.15.0 h1:RqZRs1GPeM6T3wmuxJV9u+2Rg4YETVMwTmiDeX+iWC8= -github.com/containerd/nydus-snapshotter v0.15.0/go.mod h1:biq0ijpeZe0I5yZFSJyHzFSjjRZQ7P7y/OuHyd7hYOw= +github.com/containerd/nerdctl/v2 v2.1.2 h1:ykM+PtsTUWplav2vmf/YxyMwiAdEsaLM0FgkM4d95+c= +github.com/containerd/nerdctl/v2 v2.1.2/go.mod h1:yMsrdkIWe73vaknK5vOPLHxo57Up1w48061VwxAde8s= +github.com/containerd/nydus-snapshotter v0.15.1 h1:huPj2d8J1BEx6mjm6h72BCo1kY5lTrfatnnujzpu6BA= +github.com/containerd/nydus-snapshotter v0.15.1/go.mod h1:FfwH2KBkNYoisK/e+KsmNr7xTU53DmnavQHMFOcXwfM= github.com/containerd/platforms v1.0.0-rc.1 h1:83KIq4yy1erSRgOVHNk1HYdPvzdJ5CnsWaRoJX4C41E= github.com/containerd/platforms v1.0.0-rc.1/go.mod h1:J71L7B+aiM5SdIEqmd9wp6THLVRzJGXfNuWCZCllLA4= github.com/containerd/plugin v1.0.0 h1:c8Kf1TNl6+e2TtMHZt+39yAPDbouRH9WAToRjex483Y= @@ -69,8 +81,8 @@ github.com/containerd/typeurl/v2 v2.2.3 h1:yNA/94zxWdvYACdYO8zofhrTVuQY73fFU1y++ github.com/containerd/typeurl/v2 v2.2.3/go.mod h1:95ljDnPfD3bAbDJRugOiShd/DlAAsxGtUBhJxIn7SCk= github.com/containernetworking/cni v1.3.0 h1:v6EpN8RznAZj9765HhXQrtXgX+ECGebEYEmnuFjskwo= github.com/containernetworking/cni v1.3.0/go.mod h1:Bs8glZjjFfGPHMw6hQu82RUgEPNGEaBb9KS5KtNMnJ4= -github.com/containernetworking/plugins v1.6.2 h1:pqP8Mq923TLyef5g97XfJ/xpDeVek4yF8A4mzy9Tc4U= -github.com/containernetworking/plugins v1.6.2/go.mod h1:SP5UG3jDO9LtmfbBJdP+nl3A1atOtbj2MBOYsnaxy64= +github.com/containernetworking/plugins v1.7.1 h1:CNAR0jviDj6FS5Vg85NTgKWLDzZPfi/lj+VJfhMDTIs= +github.com/containernetworking/plugins v1.7.1/go.mod h1:xuMdjuio+a1oVQsHKjr/mgzuZ24leAsqUYRnzGoXHy0= github.com/containers/ocicrypt v1.2.1 h1:0qIOTT9DoYwcKmxSt8QJt+VzMY18onl9jUXsxpVhSmM= github.com/containers/ocicrypt v1.2.1/go.mod h1:aD0AAqfMp0MtwqWgHM1bUwe1anx0VazI108CRrSKINQ= github.com/coreos/go-iptables v0.8.0 h1:MPc2P89IhuVpLI7ETL/2tx3XZ61VeICZjYqDEgNsPRc= @@ -86,6 +98,12 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgraph-io/badger/v4 v4.5.1 h1:7DCIXrQjo1LKmM96YD+hLVJ2EEsyyoWxJfpdd56HLps= +github.com/dgraph-io/badger/v4 v4.5.1/go.mod h1:qn3Be0j3TfV4kPbVoK0arXCD1/nr1ftth6sbL5jxdoA= +github.com/dgraph-io/ristretto/v2 v2.1.0 h1:59LjpOJLNDULHh8MC4UaegN52lC4JnO2dITsie/Pa8I= +github.com/dgraph-io/ristretto/v2 v2.1.0/go.mod h1:uejeqfYXpUomfse0+lO+13ATz4TypQYLJZzBSAemuB4= +github.com/dgryski/trifles v0.0.0-20230903005119-f50d829f2e54 h1:SG7nF6SRlWhcT7cNTs5R6Hk4V2lcmLz2NsG2VnInyNo= +github.com/dgryski/trifles v0.0.0-20230903005119-f50d829f2e54/go.mod h1:if7Fbed8SFyPtHLHbg49SI7NAdJiC5WIA09pe59rfAA= github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= github.com/djherbis/times v1.6.0 h1:w2ctJ92J8fBvWPxugmXIv7Nz7Q3iDMKNx9v5ocVH20c= @@ -100,22 +118,30 @@ github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= +github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/fahedouch/go-logrotate v0.2.1 h1:Q0Hk9Kp/Y4iwy9uR9e/60fEoxGhvfk8MG7WwtL9aarM= -github.com/fahedouch/go-logrotate v0.2.1/go.mod h1:Mmyex1f9fGXBNnhS9uHsbnO9BGvADF4VGqVnqAJalgc= +github.com/fahedouch/go-logrotate v0.3.0 h1:XP+dHIDgWZ1ckz43mG6gl5ASer3PZDVr755SVMyzaUQ= +github.com/fahedouch/go-logrotate v0.3.0/go.mod h1:X49m0bvPLkk71MHNCQ1yEfVEw8W/u+qvHa/hOnhCYf4= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/fluent/fluent-logger-golang v1.9.0 h1:zUdY44CHX2oIUc7VTNZc+4m+ORuO/mldQDA7czhWXEg= -github.com/fluent/fluent-logger-golang v1.9.0/go.mod h1:2/HCT/jTy78yGyeNGQLGQsjF3zzzAuy6Xlk6FCMV5eU= -github.com/fsnotify/fsnotify v1.8.0 h1:dAwr6QBTBZIkG8roQaJjGof0pp0EeF+tNV7YBP3F/8M= -github.com/fsnotify/fsnotify v1.8.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0= +github.com/fluent/fluent-logger-golang v1.10.0 h1:JcLj8u3WclQv2juHGKTSzBRM5vIZjEqbrmvn/n+m1W0= +github.com/fluent/fluent-logger-golang v1.10.0/go.mod h1:UNyv8FAGmQcYJRtk+yfxhWqWUwsabTipgjXvBDR8kTs= +github.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw= +github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g= +github.com/foxcpp/go-mockdns v1.1.0 h1:jI0rD8M0wuYAxL7r/ynTrCQQq0BVqfB99Vgk7DlmewI= +github.com/foxcpp/go-mockdns v1.1.0/go.mod h1:IhLeSFGed3mJIAXPH2aiRQB+kqz7oqu8ld2qVbOu7Wk= +github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= +github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0= github.com/getlantern/httptest v0.0.0-20161025015934-4b40f4c7e590 h1:OhyiFx+yBN30O3IHrIq+9LAEhy6o7fin21wUQxF8NiE= github.com/getlantern/httptest v0.0.0-20161025015934-4b40f4c7e590/go.mod h1:rE/jidqqHHG9sjSxC24Gd5YCfZ1AT91C2wjJ28TAOfA= github.com/getlantern/mockconn v0.0.0-20200818071412-cb30d065a848 h1:2MhMMVBTnaHrst6HyWFDhwQCaJ05PZuOv1bE2gN8WFY= github.com/getlantern/mockconn v0.0.0-20200818071412-cb30d065a848/go.mod h1:+F5GJ7qGpQ03DBtcOEyQpM30ix4BLswdaojecFtsdy8= +github.com/go-ini/ini v1.67.0 h1:z6ZrTEZqSWOTyH2FlglNbNgARyHG8oLW9gMELqKr06A= +github.com/go-ini/ini v1.67.0/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= github.com/go-jose/go-jose/v4 v4.0.5 h1:M6T8+mKZl/+fNNuFHvGIzDz7BTLQPIounk/b9dw3AaE= github.com/go-jose/go-jose/v4 v4.0.5/go.mod h1:s3P1lRrkT8igV8D9OjyL4WRyHvjB6a4JSllnOrmmBOA= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= @@ -129,6 +155,8 @@ github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1v github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/go-viper/mapstructure/v2 v2.2.1 h1:ZAaOCxANMuZx5RCeg0mBdEZk7DZasvvZIxtHqx8aGss= github.com/go-viper/mapstructure/v2 v2.2.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM= +github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= +github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk= github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= @@ -141,8 +169,6 @@ github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4er github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc= -github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= @@ -154,24 +180,35 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= +github.com/google/flatbuffers v24.12.23+incompatible h1:ubBKR94NR4pXUCY/MUsRVzd9umNW7ht7EG9hHfS9FX8= +github.com/google/flatbuffers v24.12.23+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/pprof v0.0.0-20250403155104-27863c87afa6 h1:BHT72Gu3keYf3ZEu2J0b1vyeLSOYI8bm5wbJM/8yDe8= github.com/google/pprof v0.0.0-20250403155104-27863c87afa6/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gorilla/handlers v1.5.2 h1:cLTUSsNkgcwhgRqvCNmdbRWG0A3N4F+M2nWKdScwyEE= github.com/gorilla/handlers v1.5.2/go.mod h1:dX+xVpaxdSw+q0Qek8SSsl3dfMk3jNddUkMzo0GtH0w= github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.1 h1:e9Rjr40Z98/clHv5Yg79Is0NtosR5LXRvdr7o/6NwbA= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.1/go.mod h1:tIxuGz/9mpox++sgp9fJjHO0+q1X9/UOWd798aAm22M= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= +github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= +github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/ipfs/go-cid v0.5.0 h1:goEKKhaGm0ul11IHA7I6p1GmKz8kEYniqFopaB5Otwg= @@ -196,12 +233,15 @@ github.com/mdlayher/netlink v1.7.2 h1:/UtM3ofJap7Vl4QWCPDGXY8d3GIY2UGSDbK+QWmY8/ github.com/mdlayher/netlink v1.7.2/go.mod h1:xraEF7uJbxLhc5fpHL4cPe221LI2bdttWlU+ZGLfQSw= github.com/mdlayher/socket v0.5.1 h1:VZaqt6RkGkt2OE9l3GcC6nZkqD3xKeQLyfleW/uBcos= github.com/mdlayher/socket v0.5.1/go.mod h1:TjPLHI1UgwEv5J1B5q0zTZq12A/6H7nKmtTanQE37IQ= +github.com/miekg/dns v1.1.57 h1:Jzi7ApEIzwEPLHWRcafCN9LZSBbqQpxjt/wpgvg7wcM= +github.com/miekg/dns v1.1.57/go.mod h1:uqRjCRUuEAA6qsOiJvDd+CFo/vW+y5WR6SNmHE55hZk= github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU= github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= github.com/minio/sha256-simd v1.0.1 h1:6kaan5IFmwTNynnKKpDHe6FWHohJOHhCPchzK49dzMM= github.com/minio/sha256-simd v1.0.1/go.mod h1:Pz6AKMiUdngCLpeTL/RJY1M9rUuPMYujV5xJjtbRSN8= github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mndrix/tap-go v0.0.0-20171203230836-629fa407e90b/go.mod h1:pzzDgJWZ34fGzaAZGFW22KVZDfyrYW+QABMrWnJBnSs= github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= github.com/moby/go-archive v0.1.0 h1:Kk/5rdW/g+H8NHdJW2gsXyZ7UnzvJNOy6VKJqueWdcQ= @@ -234,6 +274,7 @@ github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= +github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= github.com/multiformats/go-base32 v0.1.0 h1:pVx9xoSPqEIQG8o+UbAe7DNi51oej1NtK+aGkbLYxPE= @@ -248,24 +289,32 @@ github.com/multiformats/go-multihash v0.2.3 h1:7Lyc8XfX/IY2jWb/gI7JP+o7JEq9hOa7B github.com/multiformats/go-multihash v0.2.3/go.mod h1:dXgKXCXjBzdscBLk9JkjINiEsCKRVch90MdaGiKsvSM= github.com/multiformats/go-varint v0.0.7 h1:sWSGR+f/eu5ABZA2ZpYKBILXTTs9JWpdEM/nEGOHFS8= github.com/multiformats/go-varint v0.0.7/go.mod h1:r8PUYw/fD/SjBCiKOoDlGF6QawOELpZAu9eioSos/OU= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/onsi/ginkgo/v2 v2.23.4 h1:ktYTpKJAVZnDT4VjxSbiBenUjmlL/5QkBEocaWXiQus= github.com/onsi/ginkgo/v2 v2.23.4/go.mod h1:Bt66ApGPBFzHyR+JO10Zbt0Gsp4uWxu5mIOTusL46e8= github.com/onsi/gomega v1.37.0 h1:CdEG8g0S133B4OswTDC/5XPSzE1OeP29QOioj2PID2Y= github.com/onsi/gomega v1.37.0/go.mod h1:8D9+Txp43QWKhM24yyOBEdpkzN8FvJyAwecBgsU4KU0= +github.com/open-policy-agent/opa v1.1.0 h1:HMz2evdEMTyNqtdLjmu3Vyx06BmhNYAx67Yz3Ll9q2s= +github.com/open-policy-agent/opa v1.1.0/go.mod h1:T1pASQ1/vwfTa+e2fYcfpLCvWgYtqtiUv+IuA/dLPQs= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040= github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M= +github.com/opencontainers/runtime-spec v1.0.3-0.20220825212826-86290f6a00fb/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= github.com/opencontainers/runtime-spec v1.2.1 h1:S4k4ryNgEpxW1dzyqffOmhI1BHYcjzU8lpJfSlR0xww= github.com/opencontainers/runtime-spec v1.2.1/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/selinux v1.11.1 h1:nHFvthhM0qY8/m+vfhJylliSshm8G1jJ2jDMcgULaH8= -github.com/opencontainers/selinux v1.11.1/go.mod h1:E5dMC3VPuVvVHDYmi78qvhJp8+M586T4DlDRYpFkyec= +github.com/opencontainers/runtime-tools v0.9.1-0.20221107090550-2e043c6bd626 h1:DmNGcqH3WDbV5k8OJ+esPWbqUOX5rMLR2PMvziDMJi0= +github.com/opencontainers/runtime-tools v0.9.1-0.20221107090550-2e043c6bd626/go.mod h1:BRHJJd0E+cx42OybVYSgUvZmU0B8P9gZuRXlZUP7TKI= +github.com/opencontainers/selinux v1.9.1/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= +github.com/opencontainers/selinux v1.12.0 h1:6n5JV4Cf+4y0KNXW48TLj5DwfXpvWlxXplUkdTrmPb8= +github.com/opencontainers/selinux v1.12.0/go.mod h1:BTPX+bjVbWGXw7ZZWUbdENt8w0htPSrlgOOysQaU62U= github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4= github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= github.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7 h1:Dx7Ovyv/SFnMFw3fD4oEoeorXc6saIiQ23LrGLth0Gw= github.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7/go.mod h1:pxMtw7cyUw6B2bRH0ZBANSPg+AoSud1I1iyJHI69jH4= -github.com/philhofer/fwd v1.1.3-0.20240612014219-fbbf4953d986 h1:jYi87L8j62qkXzaYHAQAhEapgukhenIMZRBKTNRLHJ4= -github.com/philhofer/fwd v1.1.3-0.20240612014219-fbbf4953d986/go.mod h1:RqIHx9QI14HlwKwm98g9Re5prTQ6LdeRQn+gXJFxsJM= +github.com/philhofer/fwd v1.1.3-0.20240916144458-20a13a1f6b7c h1:dAMKvw0MlJT1GshSTtih8C2gDs04w8dReiOGXrGLNoY= +github.com/philhofer/fwd v1.1.3-0.20240916144458-20a13a1f6b7c/go.mod h1:RqIHx9QI14HlwKwm98g9Re5prTQ6LdeRQn+gXJFxsJM= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= @@ -273,20 +322,29 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/prashantv/gostub v1.1.0 h1:BTyx3RfQjRHnUWaGF9oQos79AlQ5k8WNktv7VGvVH4g= github.com/prashantv/gostub v1.1.0/go.mod h1:A5zLQHz7ieHGG7is6LLXLz7I8+3LZzsrV0P1IAHhP5U= +github.com/prometheus/client_golang v1.22.0 h1:rb93p9lokFEsctTys46VnV1kLCDpVZ0a/Y92Vm0Zc6Q= +github.com/prometheus/client_golang v1.22.0/go.mod h1:R7ljNsLXhuQXYZYtw6GAE9AZg8Y7vEW5scdCXrWRXC0= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= +github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= +github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io= +github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= -github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0 h1:MkV+77GLUNo5oJ0jf870itWm3D0Sjh7+Za9gazKc5LQ= +github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= github.com/rootless-containers/bypass4netns v0.4.2 h1:JUZcpX7VLRfDkLxBPC6fyNalJGv9MjnjECOilZIvKRc= github.com/rootless-containers/bypass4netns v0.4.2/go.mod h1:iOY28IeFVqFHnK0qkBCQ3eKzKQgSW5DtlXFQJyJMAQk= -github.com/rootless-containers/rootlesskit/v2 v2.3.4 h1:EHiqqiq+ntTfdnQtIgDR3etiuqKkRCPr1qpoizJxW/E= -github.com/rootless-containers/rootlesskit/v2 v2.3.4/go.mod h1:AJNM4jS0jFIF8GvBfnm4I0498zosnHGCIMRhUoEUmFg= +github.com/rootless-containers/rootlesskit/v2 v2.3.5 h1:WGY05oHE7xQpSkCGfYP9lMY5z19tCxA8PhWlvP1cKx8= +github.com/rootless-containers/rootlesskit/v2 v2.3.5/go.mod h1:83EIYLeMX8UeNgLHkR1PefoSV76aKEC+OyI3vzrEfvw= github.com/runfinch/common-tests v0.9.4 h1:ctGR/jq4eP3KbdeSfL4ya7DNafwc9+sQgyRdkocfMh8= github.com/runfinch/common-tests v0.9.4/go.mod h1:25UdRwKrGWnIzKHvceDaMpV3rz+41aCXGB1AOX768po= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/sasha-s/go-deadlock v0.3.5 h1:tNCOEEDG6tBqrNDOX35j/7hL5FcFViG6awUGROb2NsU= github.com/sasha-s/go-deadlock v0.3.5/go.mod h1:bugP6EGbdGYObIlx7pUZtWqlvo8k9H6vCBBsiChJQ5U= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/smallstep/pkcs7 v0.1.1 h1:x+rPdt2W088V9Vkjho4KtoggyktZJlMduZAtRHm68LU= @@ -306,21 +364,28 @@ github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSS github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -github.com/tinylib/msgp v1.2.0 h1:0uKB/662twsVBpYUPbokj4sTSKhWFKB7LopO2kWK8lY= -github.com/tinylib/msgp v1.2.0/go.mod h1:2vIGs3lcUo8izAATNobrCHevYZC/LMsJtw4JPiYPHro= +github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635 h1:kdXcSzyDtseVEc4yCz2qF8ZrQvIDBJLl4S1c3GCXmoI= +github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/tchap/go-patricia/v2 v2.3.2 h1:xTHFutuitO2zqKAQ5rCROYgUb7Or/+IC3fts9/Yc7nM= +github.com/tchap/go-patricia/v2 v2.3.2/go.mod h1:VZRHKAb53DLaG+nA9EaYYiaEx6YztwDlLElMsnSHD4k= +github.com/tinylib/msgp v1.3.0 h1:ULuf7GPooDaIlbyvgAxBV/FI7ynli6LZ1/nVUNu+0ww= +github.com/tinylib/msgp v1.3.0/go.mod h1:ykjzy2wzgrlvpDCRc4LA8UXy6D8bzMSuAF3WD57Gok0= +github.com/urfave/cli v1.19.1/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= github.com/vbatts/tar-split v0.11.6 h1:4SjTW5+PU11n6fZenf2IPoV8/tz3AaYHMWjf23envGs= github.com/vbatts/tar-split v0.11.6/go.mod h1:dqKNtesIOr2j2Qv3W/cHjnvk9I8+G7oAkFDFN6TCBEI= -github.com/vishvananda/netlink v1.3.0 h1:X7l42GfcV4S6E4vHTsw48qbrV+9PVojNfIhZcwQdrZk= -github.com/vishvananda/netlink v1.3.0/go.mod h1:i6NetklAujEcC6fK0JPjT8qSwWyO0HLn4UKG+hGqeJs= -github.com/vishvananda/netns v0.0.4/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM= +github.com/vishvananda/netlink v1.3.1 h1:3AEMt62VKqz90r0tmNhog0r/PpWKmrEShJU0wJW6bV0= +github.com/vishvananda/netlink v1.3.1/go.mod h1:ARtKouGSTGchR8aMwmkzC0qiNPrrWO5JS/XMVl45+b4= github.com/vishvananda/netns v0.0.5 h1:DfiHV+j8bA32MFM7bfEunvT8IAqQ/NzSJHtcmW5zdEY= github.com/vishvananda/netns v0.0.5/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= @@ -329,32 +394,41 @@ github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17 github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= github.com/xhit/go-str2duration/v2 v2.1.0 h1:lxklc02Drh6ynqX+DdPyp5pCKLUQpRT8bp8Ydu2Bstc= github.com/xhit/go-str2duration/v2 v2.1.0/go.mod h1:ohY8p+0f07DiV6Em5LKB0s2YpLtXVyJfNt1+BlmyAsU= +github.com/yashtewari/glob-intersection v0.2.0 h1:8iuHdN88yYuCzCdjt0gDe+6bAhUwBeEWqThExu54RFg= +github.com/yashtewari/glob-intersection v0.2.0/go.mod h1:LK7pIC3piUjovexikBbJ26Yml7g8xa5bsjfx2v1fwok= github.com/yuchanns/srslog v1.1.0 h1:CEm97Xxxd8XpJThE0gc/XsqUGgPufh5u5MUjC27/KOk= github.com/yuchanns/srslog v1.1.0/go.mod h1:HsLjdv3XV02C3kgBW2bTyW6i88OQE+VYJZIxrPKPPak= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 h1:UP6IpuHFkUgOQL9FFQFrZ+5LiwhhYRbi7VZSIx6Nj5s= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0/go.mod h1:qxuZLtbq5QDtdeSHsS7bcf6EH6uO6jUAgk764zd3rhM= -go.opentelemetry.io/otel v1.31.0 h1:NsJcKPIW0D0H3NgzPDHmo0WW6SptzPdqg/L1zsIm2hY= -go.opentelemetry.io/otel v1.31.0/go.mod h1:O0C14Yl9FgkjqcCZAsE053C13OaddMYr/hz6clDkEJE= -go.opentelemetry.io/otel/metric v1.31.0 h1:FSErL0ATQAmYHUIzSezZibnyVlft1ybhy4ozRPcF2fE= -go.opentelemetry.io/otel/metric v1.31.0/go.mod h1:C3dEloVbLuYoX41KpmAhOqNriGbA+qqH6PQ5E5mUfnY= -go.opentelemetry.io/otel/sdk v1.31.0 h1:xLY3abVHYZ5HSfOg3l2E5LUj2Cwva5Y7yGxnSW9H5Gk= -go.opentelemetry.io/otel/sdk v1.31.0/go.mod h1:TfRbMdhvxIIr/B2N2LQW2S5v9m3gOQ/08KsbbO5BPT0= -go.opentelemetry.io/otel/sdk/metric v1.31.0 h1:i9hxxLJF/9kkvfHppyLL55aW7iIJz4JjxTeYusH7zMc= -go.opentelemetry.io/otel/sdk/metric v1.31.0/go.mod h1:CRInTMVvNhUKgSAMbKyTMxqOBC0zgyxzW55lZzX43Y8= -go.opentelemetry.io/otel/trace v1.31.0 h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HYdmJys= -go.opentelemetry.io/otel/trace v1.31.0/go.mod h1:TXZkRk7SM2ZQLtR6eoAWQFIHPvzQ06FJAsO1tJg480A= +go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= +go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 h1:sbiXRNDSWJOTobXh5HyQKjq6wUC5tNybqjIqDpAY4CU= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0/go.mod h1:69uWxva0WgAA/4bu2Yy70SLDBwZXuQ6PbBpbsa5iZrQ= +go.opentelemetry.io/otel v1.35.0 h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ= +go.opentelemetry.io/otel v1.35.0/go.mod h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.35.0 h1:1fTNlAIJZGWLP5FVu0fikVry1IsiUnXjf7QFvoNN3Xw= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.35.0/go.mod h1:zjPK58DtkqQFn+YUMbx0M2XV3QgKU0gS9LeGohREyK4= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.35.0 h1:m639+BofXTvcY1q8CGs4ItwQarYtJPOWmVobfM1HpVI= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.35.0/go.mod h1:LjReUci/F4BUyv+y4dwnq3h/26iNOeC3wAIqgvTIZVo= +go.opentelemetry.io/otel/metric v1.35.0 h1:0znxYu2SNyuMSQT4Y9WDWej0VpcsxkuklLa4/siN90M= +go.opentelemetry.io/otel/metric v1.35.0/go.mod h1:nKVFgxBZ2fReX6IlyW28MgZojkoAkJGaE8CpgeAU3oE= +go.opentelemetry.io/otel/sdk v1.35.0 h1:iPctf8iprVySXSKJffSS79eOjl9pvxV9ZqOWT0QejKY= +go.opentelemetry.io/otel/sdk v1.35.0/go.mod h1:+ga1bZliga3DxJ3CQGg3updiaAJoNECOgJREo9KHGQg= +go.opentelemetry.io/otel/sdk/metric v1.35.0 h1:1RriWBmCKgkeHEhM7a2uMjMUfP7MsOF5JpUCaEqEI9o= +go.opentelemetry.io/otel/sdk/metric v1.35.0/go.mod h1:is6XYCUMpcKi+ZsOvfluY5YstFnhW0BidkR+gL+qN+w= +go.opentelemetry.io/otel/trace v1.35.0 h1:dPpEfJu1sDIqruz7BHFG3c7528f6ddfSWfFDVt/xgMs= +go.opentelemetry.io/otel/trace v1.35.0/go.mod h1:WUk7DtFp1Aw2MkvqGdwiXYDZZNvA/1J8o6xRXLrIkyc= +go.opentelemetry.io/proto/otlp v1.5.0 h1:xJvq7gMzB31/d406fB8U5CBdyQGw4P399D1aQWU/3i4= +go.opentelemetry.io/proto/otlp v1.5.0/go.mod h1:keN8WnHxOy8PG0rQZjJJ5A2ebUoafqWp0eVQ4yIXvJ4= go.uber.org/automaxprocs v1.6.0 h1:O3y2/QNTOdbF+e/dpXNNW7Rx2hZ4sTIPyybbxyNqTUs= go.uber.org/automaxprocs v1.6.0/go.mod h1:ifeIMSnPZuznNm6jmdzmU3/bfk01Fe2fotchwEFJ8r8= -go.uber.org/goleak v1.1.12 h1:gZAh5/EyT/HQwlpkCy6wTpqfH9H8Lz8zbm3dZh+OyzA= -go.uber.org/goleak v1.1.12/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= -go.uber.org/mock v0.5.0 h1:KAMbZvZPyBPWgD14IrIQ38QCyjwpvVVV6K/bHl1IwQU= -go.uber.org/mock v0.5.0/go.mod h1:ge71pBPLYDk7QIi1LupWxdAykm7KIEFchiOqd6z7qMM= +go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= +go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= +go.uber.org/mock v0.5.2 h1:LbtPTcP8A5k9WPXj54PPPbjcI4Y6lhyOZXn+VS7wNko= +go.uber.org/mock v0.5.2/go.mod h1:wLlUxC2vVTPTaE3UD51E0BGOAElKrILxhVSDYQLld5o= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= @@ -363,8 +437,8 @@ golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliY golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= golang.org/x/crypto v0.30.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= -golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE= -golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc= +golang.org/x/crypto v0.38.0 h1:jt+WWG8IZlBnVbomuhg2Mdq0+BBQaHbtqHEFEigjUV8= +golang.org/x/crypto v0.38.0/go.mod h1:MvrbAqul58NNYPKnOra203SB9vpuZW0e+RRZV+Ggqjw= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f h1:XdNn9LlyWAhLVp6P/i8QYBW+hlyhrhei9uErw2B5GJo= golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f/go.mod h1:D5SMRVC3C2/4+F/DB1wZsLRnSNimn2Sp/NPsCrsv8ak= @@ -373,12 +447,13 @@ golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvx golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.24.0 h1:ZfthKaKaT4NrhGVZHO1/WDTwGES4De8KtWO0SIbNJMU= +golang.org/x/mod v0.24.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -389,37 +464,35 @@ golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= -golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY= -golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E= +golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY= +golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sync v0.13.0 h1:AauUjRAJ9OSnvULf/ARrrVywoJDy0YS2AwQ98I37610= -golang.org/x/sync v0.13.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= +golang.org/x/sync v0.14.0 h1:woo0S4Yywslg6hp4eUFjTVOyKt0RookbpAHG4c1HmhQ= +golang.org/x/sync v0.14.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -446,8 +519,8 @@ golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM= -golang.org/x/term v0.31.0 h1:erwDkOK1Msy6offm1mOgvspSkslFnIGsFnxOKoufg3o= -golang.org/x/term v0.31.0/go.mod h1:R4BeIy7D95HzImkxGkTW1UQTtP54tio2RyHz7PwK0aw= +golang.org/x/term v0.32.0 h1:DR4lr0TjUs3epypdhTOkMmuF5CDFJ/8pOnbzMZPQ7bg= +golang.org/x/term v0.32.0/go.mod h1:uZG1FhGx848Sqfsq4/DlJr3xGGsYMu/L5GW4abiaEPQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= @@ -457,10 +530,10 @@ golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= -golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0= -golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU= -golang.org/x/time v0.8.0 h1:9i3RxcPv3PZnitoVGMPDKZSq1xW1gK1Xy3ArNOGZfEg= -golang.org/x/time v0.8.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4= +golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA= +golang.org/x/time v0.9.0 h1:EsRrnYcQiGH+5FfbgvV4AP7qEZstoyrHB0DzarOQ4ZY= +golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= @@ -469,7 +542,6 @@ golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBn golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= @@ -485,15 +557,18 @@ google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7 google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250106144421-5f5ef82da422 h1:3UsHvIr4Wc2aW4brOaSCmcxh9ksica6fHEr8P1XhkYw= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250106144421-5f5ef82da422/go.mod h1:3ENsm/5D1mzDyhpzeRi1NR784I0BcofWBoSc5QqqMK4= +google.golang.org/genproto v0.0.0-20240227224415-6ceb2ff114de h1:F6qOa9AZTYJXOUEr4jDysRDLrm4PHePlge4v4TGAlxY= +google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a h1:nwKuGPlUAt+aR+pcrkfFRrTU1BVrSmYyYMxYbUIVHr0= +google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a/go.mod h1:3kWAYMk1I75K4vykHtKt2ycnOgpA6974V7bREqbsenU= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a h1:51aaUVRocpvUOSQKM6Q7VuoaktNIaMCLuhZB6DKksq4= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a/go.mod h1:uRxBH1mhmO8PGhU89cMcHaXKZqO+OfakD8QQO0oYwlQ= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.69.4 h1:MF5TftSMkd8GLw/m0KM6V8CMOCY6NZ1NQDPGFgbTt4A= -google.golang.org/grpc v1.69.4/go.mod h1:vyjdE6jLBI76dgpDojsFGNaHlxdjXN9ghpnd2o7JGZ4= +google.golang.org/grpc v1.72.0 h1:S7UkcVa60b5AAQTaO6ZKamFp1zMZSU0fGDK2WZLbBnM= +google.golang.org/grpc v1.72.0/go.mod h1:wH5Aktxcg25y1I3w7H69nHfXdOG3UiadoBtjh3izSDM= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -520,3 +595,9 @@ honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= lukechampine.com/blake3 v1.3.0 h1:sJ3XhFINmHSrYCgl958hscfIa3bw8x4DqMP3u1YvoYE= lukechampine.com/blake3 v1.3.0/go.mod h1:0OFRp7fBtAylGVCO40o87sbupkyIGgbpv1+M1k1LM6k= +sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= +sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= +tags.cncf.io/container-device-interface v1.0.1 h1:KqQDr4vIlxwfYh0Ed/uJGVgX+CHAkahrgabg6Q8GYxc= +tags.cncf.io/container-device-interface v1.0.1/go.mod h1:JojJIOeW3hNbcnOH2q0NrWNha/JuHoDZcmYxAZwb2i0= +tags.cncf.io/container-device-interface/specs-go v1.0.0 h1:8gLw29hH1ZQP9K1YtAzpvkHCjjyIxHZYzBAvlQ+0vD8= +tags.cncf.io/container-device-interface/specs-go v1.0.0/go.mod h1:u86hoFWqnh3hWz3esofRFKbI261bUlvUfLKGrDhJkgQ= diff --git a/internal/backend/container.go b/internal/backend/container.go index d7f5ca5e..16d4c58c 100644 --- a/internal/backend/container.go +++ b/internal/backend/container.go @@ -6,7 +6,6 @@ package backend import ( "bytes" "context" - "encoding/json" "fmt" "io" "os" @@ -77,22 +76,21 @@ func (w *NerdctlWrapper) InspectContainer(ctx context.Context, c containerd.Cont }, } - err := container.Inspect(ctx, w.clientWrapper.client, []string{c.ID()}, options) + results, err := container.Inspect(ctx, w.clientWrapper.client, []string{c.ID()}, options) if err != nil { return nil, err } - // Parse the JSON response - var containers []*dockercompat.Container - if err := json.Unmarshal(buf.Bytes(), &containers); err != nil { - return nil, err + if len(results) != 1 { + return nil, fmt.Errorf("expected 1 container, got %d", len(results)) } - if len(containers) != 1 { - return nil, fmt.Errorf("expected 1 container, got %d", len(containers)) + container, ok := results[0].(*dockercompat.Container) + if !ok { + return nil, fmt.Errorf("unexpected inspect result type: %T", results[0]) } - return containers[0], nil + return container, nil } func (w *NerdctlWrapper) InspectNetNS(ctx context.Context, pid int) (*native.NetNS, error) { diff --git a/internal/service/builder/build_test.go b/internal/service/builder/build_test.go index ba3218c4..5127b7b1 100644 --- a/internal/service/builder/build_test.go +++ b/internal/service/builder/build_test.go @@ -12,7 +12,7 @@ import ( "os" "github.com/containerd/nerdctl/v2/pkg/api/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/attach_test.go b/internal/service/container/attach_test.go index ece32082..2499aea1 100644 --- a/internal/service/container/attach_test.go +++ b/internal/service/container/attach_test.go @@ -16,7 +16,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/labels" "github.com/containerd/nerdctl/v2/pkg/labels/k8slabels" "github.com/containerd/typeurl/v2" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/container_test.go b/internal/service/container/container_test.go index 7985c825..30537d22 100644 --- a/internal/service/container/container_test.go +++ b/internal/service/container/container_test.go @@ -9,7 +9,7 @@ import ( "testing" containerd "github.com/containerd/containerd/v2/client" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/create_test.go b/internal/service/container/create_test.go index eb0ed0d9..43b5b367 100644 --- a/internal/service/container/create_test.go +++ b/internal/service/container/create_test.go @@ -11,7 +11,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/containerd/nerdctl/v2/pkg/netutil" "github.com/containernetworking/cni/libcni" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/exec_test.go b/internal/service/container/exec_test.go index b7af57ee..cf7fd54b 100644 --- a/internal/service/container/exec_test.go +++ b/internal/service/container/exec_test.go @@ -14,7 +14,7 @@ import ( "github.com/containerd/containerd/v2/pkg/cio" "github.com/containerd/containerd/v2/pkg/oci" cerrdefs "github.com/containerd/errdefs" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/opencontainers/runtime-spec/specs-go" diff --git a/internal/service/container/get_archive_test.go b/internal/service/container/get_archive_test.go index 350dbd75..f241f115 100644 --- a/internal/service/container/get_archive_test.go +++ b/internal/service/container/get_archive_test.go @@ -14,7 +14,7 @@ import ( "github.com/containerd/containerd/v2/core/containers" "github.com/containerd/containerd/v2/core/mount" cerrdefs "github.com/containerd/errdefs" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/spf13/afero" diff --git a/internal/service/container/inspect_test.go b/internal/service/container/inspect_test.go index 86e2ab84..e8ef2b48 100644 --- a/internal/service/container/inspect_test.go +++ b/internal/service/container/inspect_test.go @@ -9,7 +9,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/kill_test.go b/internal/service/container/kill_test.go index 1159de96..ce7e6971 100644 --- a/internal/service/container/kill_test.go +++ b/internal/service/container/kill_test.go @@ -8,7 +8,7 @@ import ( "errors" "fmt" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/list_test.go b/internal/service/container/list_test.go index de7d1c92..015d461c 100644 --- a/internal/service/container/list_test.go +++ b/internal/service/container/list_test.go @@ -12,7 +12,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" ncContainer "github.com/containerd/nerdctl/v2/pkg/cmd/container" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/logs_test.go b/internal/service/container/logs_test.go index 782f9bb8..8950460d 100644 --- a/internal/service/container/logs_test.go +++ b/internal/service/container/logs_test.go @@ -19,7 +19,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/labels" "github.com/containerd/nerdctl/v2/pkg/labels/k8slabels" "github.com/containerd/typeurl/v2" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/pause_test.go b/internal/service/container/pause_test.go index fe1356a6..7b2806d8 100644 --- a/internal/service/container/pause_test.go +++ b/internal/service/container/pause_test.go @@ -8,7 +8,7 @@ import ( "errors" "fmt" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/put_archive_test.go b/internal/service/container/put_archive_test.go index c90403d5..d777e4c4 100644 --- a/internal/service/container/put_archive_test.go +++ b/internal/service/container/put_archive_test.go @@ -16,7 +16,7 @@ import ( "github.com/containerd/containerd/v2/core/containers" "github.com/containerd/containerd/v2/core/mount" cerrdefs "github.com/containerd/errdefs" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" "github.com/moby/go-archive" "github.com/moby/sys/user" . "github.com/onsi/ginkgo/v2" diff --git a/internal/service/container/remove_test.go b/internal/service/container/remove_test.go index c5b415bd..237cffb0 100644 --- a/internal/service/container/remove_test.go +++ b/internal/service/container/remove_test.go @@ -9,7 +9,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" ncContainer "github.com/containerd/nerdctl/v2/pkg/cmd/container" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/rename_test.go b/internal/service/container/rename_test.go index c46c8b45..8a9fe351 100644 --- a/internal/service/container/rename_test.go +++ b/internal/service/container/rename_test.go @@ -9,7 +9,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/restart_test.go b/internal/service/container/restart_test.go index 067ec7f2..bd829703 100644 --- a/internal/service/container/restart_test.go +++ b/internal/service/container/restart_test.go @@ -10,7 +10,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/runfinch/finch-daemon/api/handlers/container" diff --git a/internal/service/container/start_test.go b/internal/service/container/start_test.go index 3b54f271..05a7b02b 100644 --- a/internal/service/container/start_test.go +++ b/internal/service/container/start_test.go @@ -9,7 +9,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/stats_test.go b/internal/service/container/stats_test.go index cd6a2e9f..60038bd5 100644 --- a/internal/service/container/stats_test.go +++ b/internal/service/container/stats_test.go @@ -18,7 +18,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/labels" "github.com/containerd/typeurl/v2" dockertypes "github.com/docker/docker/api/types/container" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "google.golang.org/protobuf/types/known/anypb" diff --git a/internal/service/container/stop_test.go b/internal/service/container/stop_test.go index cbb417d0..d22c0210 100644 --- a/internal/service/container/stop_test.go +++ b/internal/service/container/stop_test.go @@ -8,7 +8,7 @@ import ( "fmt" containerd "github.com/containerd/containerd/v2/client" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/unpause_test.go b/internal/service/container/unpause_test.go index 353f94ed..eda2a798 100644 --- a/internal/service/container/unpause_test.go +++ b/internal/service/container/unpause_test.go @@ -8,7 +8,7 @@ import ( "errors" "fmt" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/container/wait_test.go b/internal/service/container/wait_test.go index fe111094..ee18a55f 100644 --- a/internal/service/container/wait_test.go +++ b/internal/service/container/wait_test.go @@ -8,7 +8,7 @@ import ( "errors" "fmt" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/distribution/distribution_test.go b/internal/service/distribution/distribution_test.go index c5e54567..759377ee 100644 --- a/internal/service/distribution/distribution_test.go +++ b/internal/service/distribution/distribution_test.go @@ -13,7 +13,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/imgutil/dockerconfigresolver" dockertypes "github.com/docker/cli/cli/config/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" specs "github.com/opencontainers/image-spec/specs-go" diff --git a/internal/service/exec/exec_test.go b/internal/service/exec/exec_test.go index 1c1b71f7..d4d5b871 100644 --- a/internal/service/exec/exec_test.go +++ b/internal/service/exec/exec_test.go @@ -11,7 +11,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" "github.com/containerd/containerd/v2/pkg/cio" cerrdefs "github.com/containerd/errdefs" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/exec/inspect_test.go b/internal/service/exec/inspect_test.go index 6a47c62c..9a325440 100644 --- a/internal/service/exec/inspect_test.go +++ b/internal/service/exec/inspect_test.go @@ -11,7 +11,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" "github.com/containerd/containerd/v2/pkg/cio" cerrdefs "github.com/containerd/errdefs" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/exec/resize_test.go b/internal/service/exec/resize_test.go index 9b3232ac..867a1838 100644 --- a/internal/service/exec/resize_test.go +++ b/internal/service/exec/resize_test.go @@ -9,7 +9,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" cerrdefs "github.com/containerd/errdefs" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/exec/start_test.go b/internal/service/exec/start_test.go index 4ed06633..af9d691d 100644 --- a/internal/service/exec/start_test.go +++ b/internal/service/exec/start_test.go @@ -12,7 +12,7 @@ import ( containerd "github.com/containerd/containerd/v2/client" cerrdefs "github.com/containerd/errdefs" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/image/image_test.go b/internal/service/image/image_test.go index fc1e9015..7551ce44 100644 --- a/internal/service/image/image_test.go +++ b/internal/service/image/image_test.go @@ -12,7 +12,7 @@ import ( "github.com/containerd/containerd/v2/core/remotes" "github.com/containerd/nerdctl/v2/pkg/imgutil/dockerconfigresolver" dockertypes "github.com/docker/cli/cli/config/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/opencontainers/go-digest" diff --git a/internal/service/image/inspect_test.go b/internal/service/image/inspect_test.go index d6ede072..49c69f2c 100644 --- a/internal/service/image/inspect_test.go +++ b/internal/service/image/inspect_test.go @@ -9,7 +9,7 @@ import ( "github.com/containerd/containerd/v2/core/images" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/image/load_test.go b/internal/service/image/load_test.go index 9aac870f..994d1d21 100644 --- a/internal/service/image/load_test.go +++ b/internal/service/image/load_test.go @@ -9,7 +9,7 @@ import ( "io" "strings" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/image/pull_test.go b/internal/service/image/pull_test.go index da943761..5aede49e 100644 --- a/internal/service/image/pull_test.go +++ b/internal/service/image/pull_test.go @@ -12,7 +12,7 @@ import ( cerrdefs "github.com/containerd/errdefs" "github.com/containerd/nerdctl/v2/pkg/imgutil/dockerconfigresolver" dockertypes "github.com/docker/cli/cli/config/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" ocispec "github.com/opencontainers/image-spec/specs-go/v1" diff --git a/internal/service/image/push_test.go b/internal/service/image/push_test.go index 6c643599..09cff9f4 100644 --- a/internal/service/image/push_test.go +++ b/internal/service/image/push_test.go @@ -15,7 +15,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/imgutil/dockerconfigresolver" "github.com/containerd/platforms" dockertypes "github.com/docker/cli/cli/config/types" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/opencontainers/go-digest" diff --git a/internal/service/image/remove_test.go b/internal/service/image/remove_test.go index bec09be8..017fae7f 100644 --- a/internal/service/image/remove_test.go +++ b/internal/service/image/remove_test.go @@ -7,7 +7,7 @@ import ( "context" "github.com/containerd/containerd/v2/core/images" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/opencontainers/go-digest" diff --git a/internal/service/network/create_test.go b/internal/service/network/create_test.go index 2f80c1a9..2d0709ec 100644 --- a/internal/service/network/create_test.go +++ b/internal/service/network/create_test.go @@ -10,7 +10,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/containerd/nerdctl/v2/pkg/netutil" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/network/driver/bridge.go b/internal/service/network/driver/bridge.go index 34d3a45c..e733936f 100644 --- a/internal/service/network/driver/bridge.go +++ b/internal/service/network/driver/bridge.go @@ -10,12 +10,13 @@ import ( "path/filepath" "strconv" + "github.com/containerd/log" ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" - "github.com/containerd/nerdctl/v2/pkg/lockutil" "github.com/containerd/nerdctl/v2/pkg/netutil" "github.com/runfinch/finch-daemon/api/types" "github.com/runfinch/finch-daemon/internal/backend" "github.com/runfinch/finch-daemon/pkg/flog" + "golang.org/x/sys/unix" ) const ( @@ -134,7 +135,7 @@ func (bd *bridgeDriver) HandleRemove(net *netutil.NetworkConfig) error { // setBridgeName will override the bridge name in an existing CNI config file for a network. func (bd *bridgeDriver) setBridgeName(net *netutil.NetworkConfig, bridgeName string) error { networkDir := bd.getDirForNetworkName("") - return lockutil.WithDirLock(networkDir, func() error { + return withDirLock(networkDir, func() error { // first, make sure that the bridge name is not used by any of the existing bridge networks bridgeNet, err := bd.getNetworkByBridgeName(bridgeName) if err != nil { @@ -182,7 +183,7 @@ func (bd *bridgeDriver) setBridgeName(net *netutil.NetworkConfig, bridgeName str func (bd *bridgeDriver) getBridgeName(net *netutil.NetworkConfig) (string, error) { var bridgeName string - err := lockutil.WithDirLock(bd.getDirForNetworkName(""), func() error { + err := withDirLock(bd.getDirForNetworkName(""), func() error { configFilename, err := bd.getConfigPathForNetworkName(net.Name) if err != nil { return err @@ -335,3 +336,32 @@ func (bd *bridgeDriver) getConfigPathForNetworkName(netName string) (string, err // This will be used for creating new config files return "", fmt.Errorf("network config file not found for network %s", netName) } + +// Copied from https://github.com/containerd/nerdctl/blob/294cfc9d9a1a24cbce8c4ea73a82bd0e4862854c/pkg/lockutil/lockutil_unix.go#L29 +// as the withDirLock has been changed to WithLock and is now internal only. +func withDirLock(dir string, fn func() error) error { + dirFile, err := os.Open(dir) + if err != nil { + return err + } + defer dirFile.Close() + if err := flock(dirFile, unix.LOCK_EX); err != nil { + return fmt.Errorf("failed to lock %q: %w", dir, err) + } + defer func() { + if err := flock(dirFile, unix.LOCK_UN); err != nil { + log.L.WithError(err).Errorf("failed to unlock %q", dir) + } + }() + return fn() +} + +func flock(f *os.File, flags int) error { + fd := int(f.Fd()) + for { + err := unix.Flock(fd, flags) + if err == nil || err != unix.EINTR { + return err + } + } +} diff --git a/internal/service/network/driver/bridge_test.go b/internal/service/network/driver/bridge_test.go index 643c7cd5..d8e3546d 100644 --- a/internal/service/network/driver/bridge_test.go +++ b/internal/service/network/driver/bridge_test.go @@ -8,7 +8,7 @@ import ( ncTypes "github.com/containerd/nerdctl/v2/pkg/api/types" "github.com/coreos/go-iptables/iptables" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/runfinch/finch-daemon/api/types" diff --git a/internal/service/network/inspect_test.go b/internal/service/network/inspect_test.go index f2719124..c9df45c7 100644 --- a/internal/service/network/inspect_test.go +++ b/internal/service/network/inspect_test.go @@ -11,7 +11,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" "github.com/containerd/nerdctl/v2/pkg/netutil" "github.com/containernetworking/cni/libcni" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/network/list_test.go b/internal/service/network/list_test.go index 9b9689f0..f7d65aab 100644 --- a/internal/service/network/list_test.go +++ b/internal/service/network/list_test.go @@ -9,7 +9,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/netutil" "github.com/containernetworking/cni/libcni" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/network/remove_test.go b/internal/service/network/remove_test.go index c0f1b10a..e33b29c7 100644 --- a/internal/service/network/remove_test.go +++ b/internal/service/network/remove_test.go @@ -9,7 +9,7 @@ import ( "github.com/containerd/nerdctl/v2/pkg/netutil" "github.com/containernetworking/cni/libcni" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/system/events_test.go b/internal/service/system/events_test.go index aa62f1e3..88f1323f 100644 --- a/internal/service/system/events_test.go +++ b/internal/service/system/events_test.go @@ -10,7 +10,7 @@ import ( "github.com/containerd/containerd/v2/core/events" "github.com/containerd/typeurl/v2" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/system/version_test.go b/internal/service/system/version_test.go index 26c84485..97b7e6c5 100644 --- a/internal/service/system/version_test.go +++ b/internal/service/system/version_test.go @@ -8,7 +8,7 @@ import ( "fmt" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/volume/create_test.go b/internal/service/volume/create_test.go index 32f35328..158f42fb 100644 --- a/internal/service/volume/create_test.go +++ b/internal/service/volume/create_test.go @@ -8,7 +8,7 @@ import ( "errors" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/volume/inspect_test.go b/internal/service/volume/inspect_test.go index 288ff284..fdc92406 100644 --- a/internal/service/volume/inspect_test.go +++ b/internal/service/volume/inspect_test.go @@ -7,7 +7,7 @@ import ( "fmt" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/volume/list_test.go b/internal/service/volume/list_test.go index 7d708bd5..aff6af9d 100644 --- a/internal/service/volume/list_test.go +++ b/internal/service/volume/list_test.go @@ -8,7 +8,7 @@ import ( "errors" "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/internal/service/volume/remove_test.go b/internal/service/volume/remove_test.go index db4e6f0e..b50f859e 100644 --- a/internal/service/volume/remove_test.go +++ b/internal/service/volume/remove_test.go @@ -7,7 +7,7 @@ import ( "context" "fmt" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" diff --git a/mocks/mocks_archive/tarcreator.go b/mocks/mocks_archive/tarcreator.go index 0bee8415..c258c09f 100644 --- a/mocks/mocks_archive/tarcreator.go +++ b/mocks/mocks_archive/tarcreator.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/pkg/archive (interfaces: TarCreator) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_archive/tarcreator.go -package=mocks_archive github.com/runfinch/finch-daemon/pkg/archive TarCreator +// // Package mocks_archive is a generated GoMock package. package mocks_archive @@ -7,14 +12,15 @@ package mocks_archive import ( reflect "reflect" - gomock "github.com/golang/mock/gomock" ecc "github.com/runfinch/finch-daemon/pkg/ecc" + gomock "go.uber.org/mock/gomock" ) // MockTarCreator is a mock of TarCreator interface. type MockTarCreator struct { ctrl *gomock.Controller recorder *MockTarCreatorMockRecorder + isgomock struct{} } // MockTarCreatorMockRecorder is the mock recorder for MockTarCreator. @@ -35,16 +41,16 @@ func (m *MockTarCreator) EXPECT() *MockTarCreatorMockRecorder { } // CreateTarCommand mocks base method. -func (m *MockTarCreator) CreateTarCommand(arg0 string, arg1 bool) (ecc.ExecCmd, error) { +func (m *MockTarCreator) CreateTarCommand(srcPath string, slashDot bool) (ecc.ExecCmd, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CreateTarCommand", arg0, arg1) + ret := m.ctrl.Call(m, "CreateTarCommand", srcPath, slashDot) ret0, _ := ret[0].(ecc.ExecCmd) ret1, _ := ret[1].(error) return ret0, ret1 } // CreateTarCommand indicates an expected call of CreateTarCommand. -func (mr *MockTarCreatorMockRecorder) CreateTarCommand(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockTarCreatorMockRecorder) CreateTarCommand(srcPath, slashDot any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateTarCommand", reflect.TypeOf((*MockTarCreator)(nil).CreateTarCommand), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateTarCommand", reflect.TypeOf((*MockTarCreator)(nil).CreateTarCommand), srcPath, slashDot) } diff --git a/mocks/mocks_archive/tarextractor.go b/mocks/mocks_archive/tarextractor.go index 251f1e53..dab97d35 100644 --- a/mocks/mocks_archive/tarextractor.go +++ b/mocks/mocks_archive/tarextractor.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/pkg/archive (interfaces: TarExtractor) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_archive/tarextractor.go -package=mocks_archive github.com/runfinch/finch-daemon/pkg/archive TarExtractor +// // Package mocks_archive is a generated GoMock package. package mocks_archive @@ -8,15 +13,16 @@ import ( io "io" reflect "reflect" - gomock "github.com/golang/mock/gomock" archive "github.com/moby/go-archive" ecc "github.com/runfinch/finch-daemon/pkg/ecc" + gomock "go.uber.org/mock/gomock" ) // MockTarExtractor is a mock of TarExtractor interface. type MockTarExtractor struct { ctrl *gomock.Controller recorder *MockTarExtractorMockRecorder + isgomock struct{} } // MockTarExtractorMockRecorder is the mock recorder for MockTarExtractor. @@ -37,57 +43,57 @@ func (m *MockTarExtractor) EXPECT() *MockTarExtractorMockRecorder { } // Cleanup mocks base method. -func (m *MockTarExtractor) Cleanup(arg0 ecc.ExecCmd) { +func (m *MockTarExtractor) Cleanup(cmd ecc.ExecCmd) { m.ctrl.T.Helper() - m.ctrl.Call(m, "Cleanup", arg0) + m.ctrl.Call(m, "Cleanup", cmd) } // Cleanup indicates an expected call of Cleanup. -func (mr *MockTarExtractorMockRecorder) Cleanup(arg0 interface{}) *gomock.Call { +func (mr *MockTarExtractorMockRecorder) Cleanup(cmd any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Cleanup", reflect.TypeOf((*MockTarExtractor)(nil).Cleanup), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Cleanup", reflect.TypeOf((*MockTarExtractor)(nil).Cleanup), cmd) } // CreateExtractCmd mocks base method. -func (m *MockTarExtractor) CreateExtractCmd(arg0 io.Reader, arg1 string) (ecc.ExecCmd, error) { +func (m *MockTarExtractor) CreateExtractCmd(reader io.Reader, destDir string) (ecc.ExecCmd, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CreateExtractCmd", arg0, arg1) + ret := m.ctrl.Call(m, "CreateExtractCmd", reader, destDir) ret0, _ := ret[0].(ecc.ExecCmd) ret1, _ := ret[1].(error) return ret0, ret1 } // CreateExtractCmd indicates an expected call of CreateExtractCmd. -func (mr *MockTarExtractorMockRecorder) CreateExtractCmd(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockTarExtractorMockRecorder) CreateExtractCmd(reader, destDir any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateExtractCmd", reflect.TypeOf((*MockTarExtractor)(nil).CreateExtractCmd), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateExtractCmd", reflect.TypeOf((*MockTarExtractor)(nil).CreateExtractCmd), reader, destDir) } // ExtractCompressed mocks base method. -func (m *MockTarExtractor) ExtractCompressed(arg0 io.Reader, arg1 string, arg2 *archive.TarOptions) error { +func (m *MockTarExtractor) ExtractCompressed(tarArchive io.Reader, dest string, options *archive.TarOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ExtractCompressed", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "ExtractCompressed", tarArchive, dest, options) ret0, _ := ret[0].(error) return ret0 } // ExtractCompressed indicates an expected call of ExtractCompressed. -func (mr *MockTarExtractorMockRecorder) ExtractCompressed(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockTarExtractorMockRecorder) ExtractCompressed(tarArchive, dest, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExtractCompressed", reflect.TypeOf((*MockTarExtractor)(nil).ExtractCompressed), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExtractCompressed", reflect.TypeOf((*MockTarExtractor)(nil).ExtractCompressed), tarArchive, dest, options) } // ExtractInTemp mocks base method. -func (m *MockTarExtractor) ExtractInTemp(arg0 io.Reader, arg1 string) (ecc.ExecCmd, error) { +func (m *MockTarExtractor) ExtractInTemp(reader io.Reader, dirPrefix string) (ecc.ExecCmd, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ExtractInTemp", arg0, arg1) + ret := m.ctrl.Call(m, "ExtractInTemp", reader, dirPrefix) ret0, _ := ret[0].(ecc.ExecCmd) ret1, _ := ret[1].(error) return ret0, ret1 } // ExtractInTemp indicates an expected call of ExtractInTemp. -func (mr *MockTarExtractorMockRecorder) ExtractInTemp(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockTarExtractorMockRecorder) ExtractInTemp(reader, dirPrefix any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExtractInTemp", reflect.TypeOf((*MockTarExtractor)(nil).ExtractInTemp), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExtractInTemp", reflect.TypeOf((*MockTarExtractor)(nil).ExtractInTemp), reader, dirPrefix) } diff --git a/mocks/mocks_backend/containerdclient.go b/mocks/mocks_backend/containerdclient.go index c23122a2..fe654c4d 100644 --- a/mocks/mocks_backend/containerdclient.go +++ b/mocks/mocks_backend/containerdclient.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/backend (interfaces: ContainerdClient) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_backend/containerdclient.go -package=mocks_backend github.com/runfinch/finch-daemon/internal/backend ContainerdClient +// // Package mocks_backend is a generated GoMock package. package mocks_backend @@ -16,15 +21,16 @@ import ( cio "github.com/containerd/containerd/v2/pkg/cio" oci "github.com/containerd/containerd/v2/pkg/oci" platforms "github.com/containerd/platforms" - gomock "github.com/golang/mock/gomock" digest "github.com/opencontainers/go-digest" v1 "github.com/opencontainers/image-spec/specs-go/v1" + gomock "go.uber.org/mock/gomock" ) // MockContainerdClient is a mock of ContainerdClient interface. type MockContainerdClient struct { ctrl *gomock.Controller recorder *MockContainerdClientMockRecorder + isgomock struct{} } // MockContainerdClientMockRecorder is the mock recorder for MockContainerdClient. @@ -45,10 +51,10 @@ func (m *MockContainerdClient) EXPECT() *MockContainerdClientMockRecorder { } // ConvertImage mocks base method. -func (m *MockContainerdClient) ConvertImage(arg0 context.Context, arg1, arg2 string, arg3 ...converter.Opt) (*images.Image, error) { +func (m *MockContainerdClient) ConvertImage(ctx context.Context, dstRef, srcRef string, opts ...converter.Opt) (*images.Image, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1, arg2} - for _, a := range arg3 { + varargs := []any{ctx, dstRef, srcRef} + for _, a := range opts { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "ConvertImage", varargs...) @@ -58,25 +64,25 @@ func (m *MockContainerdClient) ConvertImage(arg0 context.Context, arg1, arg2 str } // ConvertImage indicates an expected call of ConvertImage. -func (mr *MockContainerdClientMockRecorder) ConvertImage(arg0, arg1, arg2 interface{}, arg3 ...interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) ConvertImage(ctx, dstRef, srcRef any, opts ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1, arg2}, arg3...) + varargs := append([]any{ctx, dstRef, srcRef}, opts...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ConvertImage", reflect.TypeOf((*MockContainerdClient)(nil).ConvertImage), varargs...) } // DefaultDockerHost mocks base method. -func (m *MockContainerdClient) DefaultDockerHost(arg0 string) (string, error) { +func (m *MockContainerdClient) DefaultDockerHost(refDomain string) (string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DefaultDockerHost", arg0) + ret := m.ctrl.Call(m, "DefaultDockerHost", refDomain) ret0, _ := ret[0].(string) ret1, _ := ret[1].(error) return ret0, ret1 } // DefaultDockerHost indicates an expected call of DefaultDockerHost. -func (mr *MockContainerdClientMockRecorder) DefaultDockerHost(arg0 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) DefaultDockerHost(refDomain any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DefaultDockerHost", reflect.TypeOf((*MockContainerdClient)(nil).DefaultDockerHost), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DefaultDockerHost", reflect.TypeOf((*MockContainerdClient)(nil).DefaultDockerHost), refDomain) } // DefaultPlatformSpec mocks base method. @@ -108,17 +114,17 @@ func (mr *MockContainerdClientMockRecorder) DefaultPlatformStrict() *gomock.Call } // DeleteImage mocks base method. -func (m *MockContainerdClient) DeleteImage(arg0 context.Context, arg1 string) error { +func (m *MockContainerdClient) DeleteImage(ctx context.Context, img string) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DeleteImage", arg0, arg1) + ret := m.ctrl.Call(m, "DeleteImage", ctx, img) ret0, _ := ret[0].(error) return ret0 } // DeleteImage indicates an expected call of DeleteImage. -func (mr *MockContainerdClientMockRecorder) DeleteImage(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) DeleteImage(ctx, img any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteImage", reflect.TypeOf((*MockContainerdClient)(nil).DeleteImage), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteImage", reflect.TypeOf((*MockContainerdClient)(nil).DeleteImage), ctx, img) } // GetClient mocks base method. @@ -136,38 +142,38 @@ func (mr *MockContainerdClientMockRecorder) GetClient() *gomock.Call { } // GetContainerRemoveEvent mocks base method. -func (m *MockContainerdClient) GetContainerRemoveEvent(arg0 context.Context, arg1 client.Container) (<-chan *events.Envelope, <-chan error) { +func (m *MockContainerdClient) GetContainerRemoveEvent(ctx context.Context, c client.Container) (<-chan *events.Envelope, <-chan error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetContainerRemoveEvent", arg0, arg1) + ret := m.ctrl.Call(m, "GetContainerRemoveEvent", ctx, c) ret0, _ := ret[0].(<-chan *events.Envelope) ret1, _ := ret[1].(<-chan error) return ret0, ret1 } // GetContainerRemoveEvent indicates an expected call of GetContainerRemoveEvent. -func (mr *MockContainerdClientMockRecorder) GetContainerRemoveEvent(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) GetContainerRemoveEvent(ctx, c any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetContainerRemoveEvent", reflect.TypeOf((*MockContainerdClient)(nil).GetContainerRemoveEvent), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetContainerRemoveEvent", reflect.TypeOf((*MockContainerdClient)(nil).GetContainerRemoveEvent), ctx, c) } // GetContainerStatus mocks base method. -func (m *MockContainerdClient) GetContainerStatus(arg0 context.Context, arg1 client.Container) client.ProcessStatus { +func (m *MockContainerdClient) GetContainerStatus(ctx context.Context, c client.Container) client.ProcessStatus { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetContainerStatus", arg0, arg1) + ret := m.ctrl.Call(m, "GetContainerStatus", ctx, c) ret0, _ := ret[0].(client.ProcessStatus) return ret0 } // GetContainerStatus indicates an expected call of GetContainerStatus. -func (mr *MockContainerdClientMockRecorder) GetContainerStatus(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) GetContainerStatus(ctx, c any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetContainerStatus", reflect.TypeOf((*MockContainerdClient)(nil).GetContainerStatus), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetContainerStatus", reflect.TypeOf((*MockContainerdClient)(nil).GetContainerStatus), ctx, c) } // GetContainerTaskWait mocks base method. -func (m *MockContainerdClient) GetContainerTaskWait(arg0 context.Context, arg1 cio.Attach, arg2 client.Container) (client.Task, <-chan client.ExitStatus, error) { +func (m *MockContainerdClient) GetContainerTaskWait(ctx context.Context, attach cio.Attach, c client.Container) (client.Task, <-chan client.ExitStatus, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetContainerTaskWait", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "GetContainerTaskWait", ctx, attach, c) ret0, _ := ret[0].(client.Task) ret1, _ := ret[1].(<-chan client.ExitStatus) ret2, _ := ret[2].(error) @@ -175,9 +181,9 @@ func (m *MockContainerdClient) GetContainerTaskWait(arg0 context.Context, arg1 c } // GetContainerTaskWait indicates an expected call of GetContainerTaskWait. -func (mr *MockContainerdClientMockRecorder) GetContainerTaskWait(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) GetContainerTaskWait(ctx, attach, c any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetContainerTaskWait", reflect.TypeOf((*MockContainerdClient)(nil).GetContainerTaskWait), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetContainerTaskWait", reflect.TypeOf((*MockContainerdClient)(nil).GetContainerTaskWait), ctx, attach, c) } // GetCurrentCapabilities mocks base method. @@ -196,39 +202,39 @@ func (mr *MockContainerdClientMockRecorder) GetCurrentCapabilities() *gomock.Cal } // GetImage mocks base method. -func (m *MockContainerdClient) GetImage(arg0 context.Context, arg1 string) (client.Image, error) { +func (m *MockContainerdClient) GetImage(ctx context.Context, ref string) (client.Image, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetImage", arg0, arg1) + ret := m.ctrl.Call(m, "GetImage", ctx, ref) ret0, _ := ret[0].(client.Image) ret1, _ := ret[1].(error) return ret0, ret1 } // GetImage indicates an expected call of GetImage. -func (mr *MockContainerdClientMockRecorder) GetImage(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) GetImage(ctx, ref any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetImage", reflect.TypeOf((*MockContainerdClient)(nil).GetImage), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetImage", reflect.TypeOf((*MockContainerdClient)(nil).GetImage), ctx, ref) } // GetImageDigests mocks base method. -func (m *MockContainerdClient) GetImageDigests(arg0 context.Context, arg1 *images.Image) ([]digest.Digest, error) { +func (m *MockContainerdClient) GetImageDigests(ctx context.Context, img *images.Image) ([]digest.Digest, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetImageDigests", arg0, arg1) + ret := m.ctrl.Call(m, "GetImageDigests", ctx, img) ret0, _ := ret[0].([]digest.Digest) ret1, _ := ret[1].(error) return ret0, ret1 } // GetImageDigests indicates an expected call of GetImageDigests. -func (mr *MockContainerdClientMockRecorder) GetImageDigests(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) GetImageDigests(ctx, img any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetImageDigests", reflect.TypeOf((*MockContainerdClient)(nil).GetImageDigests), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetImageDigests", reflect.TypeOf((*MockContainerdClient)(nil).GetImageDigests), ctx, img) } // GetUsedImages mocks base method. -func (m *MockContainerdClient) GetUsedImages(arg0 context.Context) (map[string]string, map[string]string, error) { +func (m *MockContainerdClient) GetUsedImages(ctx context.Context) (map[string]string, map[string]string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetUsedImages", arg0) + ret := m.ctrl.Call(m, "GetUsedImages", ctx) ret0, _ := ret[0].(map[string]string) ret1, _ := ret[1].(map[string]string) ret2, _ := ret[2].(error) @@ -236,9 +242,9 @@ func (m *MockContainerdClient) GetUsedImages(arg0 context.Context) (map[string]s } // GetUsedImages indicates an expected call of GetUsedImages. -func (mr *MockContainerdClientMockRecorder) GetUsedImages(arg0 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) GetUsedImages(ctx any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetUsedImages", reflect.TypeOf((*MockContainerdClient)(nil).GetUsedImages), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetUsedImages", reflect.TypeOf((*MockContainerdClient)(nil).GetUsedImages), ctx) } // ImageService mocks base method. @@ -256,96 +262,96 @@ func (mr *MockContainerdClientMockRecorder) ImageService() *gomock.Call { } // ListSnapshotMounts mocks base method. -func (m *MockContainerdClient) ListSnapshotMounts(arg0 context.Context, arg1 string) ([]mount.Mount, error) { +func (m *MockContainerdClient) ListSnapshotMounts(ctx context.Context, cid string) ([]mount.Mount, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListSnapshotMounts", arg0, arg1) + ret := m.ctrl.Call(m, "ListSnapshotMounts", ctx, cid) ret0, _ := ret[0].([]mount.Mount) ret1, _ := ret[1].(error) return ret0, ret1 } // ListSnapshotMounts indicates an expected call of ListSnapshotMounts. -func (mr *MockContainerdClientMockRecorder) ListSnapshotMounts(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) ListSnapshotMounts(ctx, cid any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSnapshotMounts", reflect.TypeOf((*MockContainerdClient)(nil).ListSnapshotMounts), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSnapshotMounts", reflect.TypeOf((*MockContainerdClient)(nil).ListSnapshotMounts), ctx, cid) } // MountAll mocks base method. -func (m *MockContainerdClient) MountAll(arg0 []mount.Mount, arg1 string) error { +func (m *MockContainerdClient) MountAll(mounts []mount.Mount, mPath string) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "MountAll", arg0, arg1) + ret := m.ctrl.Call(m, "MountAll", mounts, mPath) ret0, _ := ret[0].(error) return ret0 } // MountAll indicates an expected call of MountAll. -func (mr *MockContainerdClientMockRecorder) MountAll(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) MountAll(mounts, mPath any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "MountAll", reflect.TypeOf((*MockContainerdClient)(nil).MountAll), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "MountAll", reflect.TypeOf((*MockContainerdClient)(nil).MountAll), mounts, mPath) } // NewDirectCIO mocks base method. -func (m *MockContainerdClient) NewDirectCIO(arg0 context.Context, arg1 *cio.FIFOSet) (*cio.DirectIO, error) { +func (m *MockContainerdClient) NewDirectCIO(ctx context.Context, fifos *cio.FIFOSet) (*cio.DirectIO, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "NewDirectCIO", arg0, arg1) + ret := m.ctrl.Call(m, "NewDirectCIO", ctx, fifos) ret0, _ := ret[0].(*cio.DirectIO) ret1, _ := ret[1].(error) return ret0, ret1 } // NewDirectCIO indicates an expected call of NewDirectCIO. -func (mr *MockContainerdClientMockRecorder) NewDirectCIO(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) NewDirectCIO(ctx, fifos any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewDirectCIO", reflect.TypeOf((*MockContainerdClient)(nil).NewDirectCIO), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewDirectCIO", reflect.TypeOf((*MockContainerdClient)(nil).NewDirectCIO), ctx, fifos) } // NewFIFOSetInDir mocks base method. -func (m *MockContainerdClient) NewFIFOSetInDir(arg0, arg1 string, arg2 bool) (*cio.FIFOSet, error) { +func (m *MockContainerdClient) NewFIFOSetInDir(root, id string, terminal bool) (*cio.FIFOSet, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "NewFIFOSetInDir", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "NewFIFOSetInDir", root, id, terminal) ret0, _ := ret[0].(*cio.FIFOSet) ret1, _ := ret[1].(error) return ret0, ret1 } // NewFIFOSetInDir indicates an expected call of NewFIFOSetInDir. -func (mr *MockContainerdClientMockRecorder) NewFIFOSetInDir(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) NewFIFOSetInDir(root, id, terminal any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewFIFOSetInDir", reflect.TypeOf((*MockContainerdClient)(nil).NewFIFOSetInDir), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewFIFOSetInDir", reflect.TypeOf((*MockContainerdClient)(nil).NewFIFOSetInDir), root, id, terminal) } // OCISpecWithAdditionalGIDs mocks base method. -func (m *MockContainerdClient) OCISpecWithAdditionalGIDs(arg0 string) oci.SpecOpts { +func (m *MockContainerdClient) OCISpecWithAdditionalGIDs(user string) oci.SpecOpts { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "OCISpecWithAdditionalGIDs", arg0) + ret := m.ctrl.Call(m, "OCISpecWithAdditionalGIDs", user) ret0, _ := ret[0].(oci.SpecOpts) return ret0 } // OCISpecWithAdditionalGIDs indicates an expected call of OCISpecWithAdditionalGIDs. -func (mr *MockContainerdClientMockRecorder) OCISpecWithAdditionalGIDs(arg0 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) OCISpecWithAdditionalGIDs(user any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OCISpecWithAdditionalGIDs", reflect.TypeOf((*MockContainerdClient)(nil).OCISpecWithAdditionalGIDs), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OCISpecWithAdditionalGIDs", reflect.TypeOf((*MockContainerdClient)(nil).OCISpecWithAdditionalGIDs), user) } // OCISpecWithUser mocks base method. -func (m *MockContainerdClient) OCISpecWithUser(arg0 string) oci.SpecOpts { +func (m *MockContainerdClient) OCISpecWithUser(user string) oci.SpecOpts { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "OCISpecWithUser", arg0) + ret := m.ctrl.Call(m, "OCISpecWithUser", user) ret0, _ := ret[0].(oci.SpecOpts) return ret0 } // OCISpecWithUser indicates an expected call of OCISpecWithUser. -func (mr *MockContainerdClientMockRecorder) OCISpecWithUser(arg0 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) OCISpecWithUser(user any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OCISpecWithUser", reflect.TypeOf((*MockContainerdClient)(nil).OCISpecWithUser), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OCISpecWithUser", reflect.TypeOf((*MockContainerdClient)(nil).OCISpecWithUser), user) } // ParseDockerRef mocks base method. -func (m *MockContainerdClient) ParseDockerRef(arg0 string) (string, string, error) { +func (m *MockContainerdClient) ParseDockerRef(rawRef string) (string, string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ParseDockerRef", arg0) + ret := m.ctrl.Call(m, "ParseDockerRef", rawRef) ret0, _ := ret[0].(string) ret1, _ := ret[1].(string) ret2, _ := ret[2].(error) @@ -353,75 +359,75 @@ func (m *MockContainerdClient) ParseDockerRef(arg0 string) (string, string, erro } // ParseDockerRef indicates an expected call of ParseDockerRef. -func (mr *MockContainerdClientMockRecorder) ParseDockerRef(arg0 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) ParseDockerRef(rawRef any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ParseDockerRef", reflect.TypeOf((*MockContainerdClient)(nil).ParseDockerRef), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ParseDockerRef", reflect.TypeOf((*MockContainerdClient)(nil).ParseDockerRef), rawRef) } // ParsePlatform mocks base method. -func (m *MockContainerdClient) ParsePlatform(arg0 string) (v1.Platform, error) { +func (m *MockContainerdClient) ParsePlatform(platform string) (v1.Platform, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ParsePlatform", arg0) + ret := m.ctrl.Call(m, "ParsePlatform", platform) ret0, _ := ret[0].(v1.Platform) ret1, _ := ret[1].(error) return ret0, ret1 } // ParsePlatform indicates an expected call of ParsePlatform. -func (mr *MockContainerdClientMockRecorder) ParsePlatform(arg0 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) ParsePlatform(platform any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ParsePlatform", reflect.TypeOf((*MockContainerdClient)(nil).ParsePlatform), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ParsePlatform", reflect.TypeOf((*MockContainerdClient)(nil).ParsePlatform), platform) } // PublishEvent mocks base method. -func (m *MockContainerdClient) PublishEvent(arg0 context.Context, arg1 string, arg2 events.Event) error { +func (m *MockContainerdClient) PublishEvent(ctx context.Context, topic string, event events.Event) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "PublishEvent", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "PublishEvent", ctx, topic, event) ret0, _ := ret[0].(error) return ret0 } // PublishEvent indicates an expected call of PublishEvent. -func (mr *MockContainerdClientMockRecorder) PublishEvent(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) PublishEvent(ctx, topic, event any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PublishEvent", reflect.TypeOf((*MockContainerdClient)(nil).PublishEvent), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PublishEvent", reflect.TypeOf((*MockContainerdClient)(nil).PublishEvent), ctx, topic, event) } // SearchContainer mocks base method. -func (m *MockContainerdClient) SearchContainer(arg0 context.Context, arg1 string) ([]client.Container, error) { +func (m *MockContainerdClient) SearchContainer(ctx context.Context, searchText string) ([]client.Container, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SearchContainer", arg0, arg1) + ret := m.ctrl.Call(m, "SearchContainer", ctx, searchText) ret0, _ := ret[0].([]client.Container) ret1, _ := ret[1].(error) return ret0, ret1 } // SearchContainer indicates an expected call of SearchContainer. -func (mr *MockContainerdClientMockRecorder) SearchContainer(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) SearchContainer(ctx, searchText any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchContainer", reflect.TypeOf((*MockContainerdClient)(nil).SearchContainer), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchContainer", reflect.TypeOf((*MockContainerdClient)(nil).SearchContainer), ctx, searchText) } // SearchImage mocks base method. -func (m *MockContainerdClient) SearchImage(arg0 context.Context, arg1 string) ([]images.Image, error) { +func (m *MockContainerdClient) SearchImage(ctx context.Context, searchText string) ([]images.Image, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SearchImage", arg0, arg1) + ret := m.ctrl.Call(m, "SearchImage", ctx, searchText) ret0, _ := ret[0].([]images.Image) ret1, _ := ret[1].(error) return ret0, ret1 } // SearchImage indicates an expected call of SearchImage. -func (mr *MockContainerdClientMockRecorder) SearchImage(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) SearchImage(ctx, searchText any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchImage", reflect.TypeOf((*MockContainerdClient)(nil).SearchImage), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchImage", reflect.TypeOf((*MockContainerdClient)(nil).SearchImage), ctx, searchText) } // SubscribeToEvents mocks base method. -func (m *MockContainerdClient) SubscribeToEvents(arg0 context.Context, arg1 ...string) (<-chan *events.Envelope, <-chan error) { +func (m *MockContainerdClient) SubscribeToEvents(ctx context.Context, filters ...string) (<-chan *events.Envelope, <-chan error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} - for _, a := range arg1 { + varargs := []any{ctx} + for _, a := range filters { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "SubscribeToEvents", varargs...) @@ -431,22 +437,22 @@ func (m *MockContainerdClient) SubscribeToEvents(arg0 context.Context, arg1 ...s } // SubscribeToEvents indicates an expected call of SubscribeToEvents. -func (mr *MockContainerdClientMockRecorder) SubscribeToEvents(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) SubscribeToEvents(ctx any, filters ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{ctx}, filters...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeToEvents", reflect.TypeOf((*MockContainerdClient)(nil).SubscribeToEvents), varargs...) } // Unmount mocks base method. -func (m *MockContainerdClient) Unmount(arg0 string, arg1 int) error { +func (m *MockContainerdClient) Unmount(mPath string, flags int) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Unmount", arg0, arg1) + ret := m.ctrl.Call(m, "Unmount", mPath, flags) ret0, _ := ret[0].(error) return ret0 } // Unmount indicates an expected call of Unmount. -func (mr *MockContainerdClientMockRecorder) Unmount(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerdClientMockRecorder) Unmount(mPath, flags any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Unmount", reflect.TypeOf((*MockContainerdClient)(nil).Unmount), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Unmount", reflect.TypeOf((*MockContainerdClient)(nil).Unmount), mPath, flags) } diff --git a/mocks/mocks_backend/nerdctlbuildersvc.go b/mocks/mocks_backend/nerdctlbuildersvc.go index 2a844c37..5aca1e6e 100644 --- a/mocks/mocks_backend/nerdctlbuildersvc.go +++ b/mocks/mocks_backend/nerdctlbuildersvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/backend (interfaces: NerdctlBuilderSvc) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_backend/nerdctlbuildersvc.go -package=mocks_backend github.com/runfinch/finch-daemon/internal/backend NerdctlBuilderSvc +// // Package mocks_backend is a generated GoMock package. package mocks_backend @@ -9,14 +14,15 @@ import ( reflect "reflect" types "github.com/containerd/nerdctl/v2/pkg/api/types" - gomock "github.com/golang/mock/gomock" backend "github.com/runfinch/finch-daemon/internal/backend" + gomock "go.uber.org/mock/gomock" ) // MockNerdctlBuilderSvc is a mock of NerdctlBuilderSvc interface. type MockNerdctlBuilderSvc struct { ctrl *gomock.Controller recorder *MockNerdctlBuilderSvcMockRecorder + isgomock struct{} } // MockNerdctlBuilderSvcMockRecorder is the mock recorder for MockNerdctlBuilderSvc. @@ -37,17 +43,17 @@ func (m *MockNerdctlBuilderSvc) EXPECT() *MockNerdctlBuilderSvcMockRecorder { } // Build mocks base method. -func (m *MockNerdctlBuilderSvc) Build(arg0 context.Context, arg1 backend.ContainerdClient, arg2 types.BuilderBuildOptions) error { +func (m *MockNerdctlBuilderSvc) Build(ctx context.Context, client backend.ContainerdClient, options types.BuilderBuildOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Build", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Build", ctx, client, options) ret0, _ := ret[0].(error) return ret0 } // Build indicates an expected call of Build. -func (mr *MockNerdctlBuilderSvcMockRecorder) Build(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlBuilderSvcMockRecorder) Build(ctx, client, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Build", reflect.TypeOf((*MockNerdctlBuilderSvc)(nil).Build), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Build", reflect.TypeOf((*MockNerdctlBuilderSvc)(nil).Build), ctx, client, options) } // GetBuildkitHost mocks base method. diff --git a/mocks/mocks_backend/nerdctlcontainersvc.go b/mocks/mocks_backend/nerdctlcontainersvc.go index 7b6e7fed..9ac0ab91 100644 --- a/mocks/mocks_backend/nerdctlcontainersvc.go +++ b/mocks/mocks_backend/nerdctlcontainersvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/backend (interfaces: NerdctlContainerSvc) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_backend/nerdctlcontainersvc.go -package=mocks_backend github.com/runfinch/finch-daemon/internal/backend NerdctlContainerSvc +// // Package mocks_backend is a generated GoMock package. package mocks_backend @@ -17,13 +22,14 @@ import ( dockercompat "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" native "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" logging "github.com/containerd/nerdctl/v2/pkg/logging" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockNerdctlContainerSvc is a mock of NerdctlContainerSvc interface. type MockNerdctlContainerSvc struct { ctrl *gomock.Controller recorder *MockNerdctlContainerSvcMockRecorder + isgomock struct{} } // MockNerdctlContainerSvcMockRecorder is the mock recorder for MockNerdctlContainerSvc. @@ -44,23 +50,23 @@ func (m *MockNerdctlContainerSvc) EXPECT() *MockNerdctlContainerSvcMockRecorder } // ContainerWait mocks base method. -func (m *MockNerdctlContainerSvc) ContainerWait(arg0 context.Context, arg1 string, arg2 types.ContainerWaitOptions) error { +func (m *MockNerdctlContainerSvc) ContainerWait(ctx context.Context, cid string, options types.ContainerWaitOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ContainerWait", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "ContainerWait", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // ContainerWait indicates an expected call of ContainerWait. -func (mr *MockNerdctlContainerSvcMockRecorder) ContainerWait(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) ContainerWait(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ContainerWait", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).ContainerWait), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ContainerWait", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).ContainerWait), ctx, cid, options) } // CreateContainer mocks base method. -func (m *MockNerdctlContainerSvc) CreateContainer(arg0 context.Context, arg1 []string, arg2 containerutil.NetworkOptionsManager, arg3 types.ContainerCreateOptions) (client.Container, func(), error) { +func (m *MockNerdctlContainerSvc) CreateContainer(ctx context.Context, args []string, netManager containerutil.NetworkOptionsManager, options types.ContainerCreateOptions) (client.Container, func(), error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CreateContainer", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "CreateContainer", ctx, args, netManager, options) ret0, _ := ret[0].(client.Container) ret1, _ := ret[1].(func()) ret2, _ := ret[2].(error) @@ -68,9 +74,9 @@ func (m *MockNerdctlContainerSvc) CreateContainer(arg0 context.Context, arg1 []s } // CreateContainer indicates an expected call of CreateContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) CreateContainer(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) CreateContainer(ctx, args, netManager, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).CreateContainer), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).CreateContainer), ctx, args, netManager, options) } // GetDataStore mocks base method. @@ -104,91 +110,91 @@ func (mr *MockNerdctlContainerSvcMockRecorder) GetNerdctlExe() *gomock.Call { } // InspectContainer mocks base method. -func (m *MockNerdctlContainerSvc) InspectContainer(arg0 context.Context, arg1 client.Container, arg2 bool) (*dockercompat.Container, error) { +func (m *MockNerdctlContainerSvc) InspectContainer(ctx context.Context, c client.Container, size bool) (*dockercompat.Container, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "InspectContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "InspectContainer", ctx, c, size) ret0, _ := ret[0].(*dockercompat.Container) ret1, _ := ret[1].(error) return ret0, ret1 } // InspectContainer indicates an expected call of InspectContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) InspectContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) InspectContainer(ctx, c, size any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).InspectContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).InspectContainer), ctx, c, size) } // InspectNetNS mocks base method. -func (m *MockNerdctlContainerSvc) InspectNetNS(arg0 context.Context, arg1 int) (*native.NetNS, error) { +func (m *MockNerdctlContainerSvc) InspectNetNS(ctx context.Context, pid int) (*native.NetNS, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "InspectNetNS", arg0, arg1) + ret := m.ctrl.Call(m, "InspectNetNS", ctx, pid) ret0, _ := ret[0].(*native.NetNS) ret1, _ := ret[1].(error) return ret0, ret1 } // InspectNetNS indicates an expected call of InspectNetNS. -func (mr *MockNerdctlContainerSvcMockRecorder) InspectNetNS(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) InspectNetNS(ctx, pid any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectNetNS", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).InspectNetNS), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectNetNS", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).InspectNetNS), ctx, pid) } // KillContainer mocks base method. -func (m *MockNerdctlContainerSvc) KillContainer(arg0 context.Context, arg1 string, arg2 types.ContainerKillOptions) error { +func (m *MockNerdctlContainerSvc) KillContainer(ctx context.Context, cid string, options types.ContainerKillOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "KillContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "KillContainer", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // KillContainer indicates an expected call of KillContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) KillContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) KillContainer(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "KillContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).KillContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "KillContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).KillContainer), ctx, cid, options) } // ListContainers mocks base method. -func (m *MockNerdctlContainerSvc) ListContainers(arg0 context.Context, arg1 types.ContainerListOptions) ([]container.ListItem, error) { +func (m *MockNerdctlContainerSvc) ListContainers(ctx context.Context, options types.ContainerListOptions) ([]container.ListItem, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListContainers", arg0, arg1) + ret := m.ctrl.Call(m, "ListContainers", ctx, options) ret0, _ := ret[0].([]container.ListItem) ret1, _ := ret[1].(error) return ret0, ret1 } // ListContainers indicates an expected call of ListContainers. -func (mr *MockNerdctlContainerSvcMockRecorder) ListContainers(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) ListContainers(ctx, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListContainers", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).ListContainers), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListContainers", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).ListContainers), ctx, options) } // LoggingInitContainerLogViewer mocks base method. -func (m *MockNerdctlContainerSvc) LoggingInitContainerLogViewer(arg0 map[string]string, arg1 logging.LogViewOptions, arg2 chan os.Signal, arg3 bool) (*logging.ContainerLogViewer, error) { +func (m *MockNerdctlContainerSvc) LoggingInitContainerLogViewer(containerLabels map[string]string, lvopts logging.LogViewOptions, stopChannel chan os.Signal, experimental bool) (*logging.ContainerLogViewer, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LoggingInitContainerLogViewer", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "LoggingInitContainerLogViewer", containerLabels, lvopts, stopChannel, experimental) ret0, _ := ret[0].(*logging.ContainerLogViewer) ret1, _ := ret[1].(error) return ret0, ret1 } // LoggingInitContainerLogViewer indicates an expected call of LoggingInitContainerLogViewer. -func (mr *MockNerdctlContainerSvcMockRecorder) LoggingInitContainerLogViewer(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) LoggingInitContainerLogViewer(containerLabels, lvopts, stopChannel, experimental any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoggingInitContainerLogViewer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).LoggingInitContainerLogViewer), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoggingInitContainerLogViewer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).LoggingInitContainerLogViewer), containerLabels, lvopts, stopChannel, experimental) } // LoggingPrintLogsTo mocks base method. -func (m *MockNerdctlContainerSvc) LoggingPrintLogsTo(arg0, arg1 io.Writer, arg2 *logging.ContainerLogViewer) error { +func (m *MockNerdctlContainerSvc) LoggingPrintLogsTo(stdout, stderr io.Writer, clv *logging.ContainerLogViewer) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LoggingPrintLogsTo", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "LoggingPrintLogsTo", stdout, stderr, clv) ret0, _ := ret[0].(error) return ret0 } // LoggingPrintLogsTo indicates an expected call of LoggingPrintLogsTo. -func (mr *MockNerdctlContainerSvcMockRecorder) LoggingPrintLogsTo(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) LoggingPrintLogsTo(stdout, stderr, clv any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoggingPrintLogsTo", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).LoggingPrintLogsTo), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoggingPrintLogsTo", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).LoggingPrintLogsTo), stdout, stderr, clv) } // NewNetworkingOptionsManager mocks base method. @@ -201,91 +207,91 @@ func (m *MockNerdctlContainerSvc) NewNetworkingOptionsManager(arg0 types.Network } // NewNetworkingOptionsManager indicates an expected call of NewNetworkingOptionsManager. -func (mr *MockNerdctlContainerSvcMockRecorder) NewNetworkingOptionsManager(arg0 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) NewNetworkingOptionsManager(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewNetworkingOptionsManager", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).NewNetworkingOptionsManager), arg0) } // PauseContainer mocks base method. -func (m *MockNerdctlContainerSvc) PauseContainer(arg0 context.Context, arg1 string, arg2 types.ContainerPauseOptions) error { +func (m *MockNerdctlContainerSvc) PauseContainer(ctx context.Context, cid string, options types.ContainerPauseOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "PauseContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "PauseContainer", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // PauseContainer indicates an expected call of PauseContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) PauseContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) PauseContainer(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PauseContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).PauseContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PauseContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).PauseContainer), ctx, cid, options) } // RemoveContainer mocks base method. -func (m *MockNerdctlContainerSvc) RemoveContainer(arg0 context.Context, arg1 client.Container, arg2, arg3 bool) error { +func (m *MockNerdctlContainerSvc) RemoveContainer(ctx context.Context, c client.Container, force, removeAnonVolumes bool) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "RemoveContainer", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "RemoveContainer", ctx, c, force, removeAnonVolumes) ret0, _ := ret[0].(error) return ret0 } // RemoveContainer indicates an expected call of RemoveContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) RemoveContainer(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) RemoveContainer(ctx, c, force, removeAnonVolumes any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).RemoveContainer), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).RemoveContainer), ctx, c, force, removeAnonVolumes) } // RenameContainer mocks base method. -func (m *MockNerdctlContainerSvc) RenameContainer(arg0 context.Context, arg1 client.Container, arg2 string, arg3 types.ContainerRenameOptions) error { +func (m *MockNerdctlContainerSvc) RenameContainer(ctx context.Context, arg1 client.Container, newName string, options types.ContainerRenameOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "RenameContainer", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "RenameContainer", ctx, arg1, newName, options) ret0, _ := ret[0].(error) return ret0 } // RenameContainer indicates an expected call of RenameContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) RenameContainer(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) RenameContainer(ctx, arg1, newName, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RenameContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).RenameContainer), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RenameContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).RenameContainer), ctx, arg1, newName, options) } // StartContainer mocks base method. -func (m *MockNerdctlContainerSvc) StartContainer(arg0 context.Context, arg1 string, arg2 types.ContainerStartOptions) error { +func (m *MockNerdctlContainerSvc) StartContainer(ctx context.Context, cid string, options types.ContainerStartOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "StartContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "StartContainer", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // StartContainer indicates an expected call of StartContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) StartContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) StartContainer(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "StartContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).StartContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "StartContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).StartContainer), ctx, cid, options) } // StopContainer mocks base method. -func (m *MockNerdctlContainerSvc) StopContainer(arg0 context.Context, arg1 string, arg2 types.ContainerStopOptions) error { +func (m *MockNerdctlContainerSvc) StopContainer(ctx context.Context, cid string, options types.ContainerStopOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "StopContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "StopContainer", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // StopContainer indicates an expected call of StopContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) StopContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) StopContainer(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "StopContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).StopContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "StopContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).StopContainer), ctx, cid, options) } // UnpauseContainer mocks base method. -func (m *MockNerdctlContainerSvc) UnpauseContainer(arg0 context.Context, arg1 string, arg2 types.ContainerUnpauseOptions) error { +func (m *MockNerdctlContainerSvc) UnpauseContainer(ctx context.Context, cid string, options types.ContainerUnpauseOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "UnpauseContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "UnpauseContainer", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // UnpauseContainer indicates an expected call of UnpauseContainer. -func (mr *MockNerdctlContainerSvcMockRecorder) UnpauseContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlContainerSvcMockRecorder) UnpauseContainer(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UnpauseContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).UnpauseContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UnpauseContainer", reflect.TypeOf((*MockNerdctlContainerSvc)(nil).UnpauseContainer), ctx, cid, options) } diff --git a/mocks/mocks_backend/nerdctlimagesvc.go b/mocks/mocks_backend/nerdctlimagesvc.go index f0e3a95c..99ac4caa 100644 --- a/mocks/mocks_backend/nerdctlimagesvc.go +++ b/mocks/mocks_backend/nerdctlimagesvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/backend (interfaces: NerdctlImageSvc) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_backend/nerdctlimagesvc.go -package=mocks_backend github.com/runfinch/finch-daemon/internal/backend NerdctlImageSvc +// // Package mocks_backend is a generated GoMock package. package mocks_backend @@ -16,14 +21,15 @@ import ( dockerconfigresolver "github.com/containerd/nerdctl/v2/pkg/imgutil/dockerconfigresolver" dockercompat "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" platforms "github.com/containerd/platforms" - gomock "github.com/golang/mock/gomock" v1 "github.com/opencontainers/image-spec/specs-go/v1" + gomock "go.uber.org/mock/gomock" ) // MockNerdctlImageSvc is a mock of NerdctlImageSvc interface. type MockNerdctlImageSvc struct { ctrl *gomock.Controller recorder *MockNerdctlImageSvcMockRecorder + isgomock struct{} } // MockNerdctlImageSvcMockRecorder is the mock recorder for MockNerdctlImageSvc. @@ -59,9 +65,9 @@ func (mr *MockNerdctlImageSvcMockRecorder) GetDataStore() *gomock.Call { } // GetDockerResolver mocks base method. -func (m *MockNerdctlImageSvc) GetDockerResolver(arg0 context.Context, arg1 string, arg2 dockerconfigresolver.AuthCreds) (remotes.Resolver, docker.StatusTracker, error) { +func (m *MockNerdctlImageSvc) GetDockerResolver(ctx context.Context, refDomain string, creds dockerconfigresolver.AuthCreds) (remotes.Resolver, docker.StatusTracker, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetDockerResolver", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "GetDockerResolver", ctx, refDomain, creds) ret0, _ := ret[0].(remotes.Resolver) ret1, _ := ret[1].(docker.StatusTracker) ret2, _ := ret[2].(error) @@ -69,38 +75,38 @@ func (m *MockNerdctlImageSvc) GetDockerResolver(arg0 context.Context, arg1 strin } // GetDockerResolver indicates an expected call of GetDockerResolver. -func (mr *MockNerdctlImageSvcMockRecorder) GetDockerResolver(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlImageSvcMockRecorder) GetDockerResolver(ctx, refDomain, creds any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDockerResolver", reflect.TypeOf((*MockNerdctlImageSvc)(nil).GetDockerResolver), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDockerResolver", reflect.TypeOf((*MockNerdctlImageSvc)(nil).GetDockerResolver), ctx, refDomain, creds) } // InspectImage mocks base method. -func (m *MockNerdctlImageSvc) InspectImage(arg0 context.Context, arg1 images.Image) (*dockercompat.Image, error) { +func (m *MockNerdctlImageSvc) InspectImage(ctx context.Context, image images.Image) (*dockercompat.Image, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "InspectImage", arg0, arg1) + ret := m.ctrl.Call(m, "InspectImage", ctx, image) ret0, _ := ret[0].(*dockercompat.Image) ret1, _ := ret[1].(error) return ret0, ret1 } // InspectImage indicates an expected call of InspectImage. -func (mr *MockNerdctlImageSvcMockRecorder) InspectImage(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNerdctlImageSvcMockRecorder) InspectImage(ctx, image any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).InspectImage), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).InspectImage), ctx, image) } // LoadImage mocks base method. -func (m *MockNerdctlImageSvc) LoadImage(arg0 context.Context, arg1 string, arg2 io.Writer, arg3 bool) error { +func (m *MockNerdctlImageSvc) LoadImage(ctx context.Context, img string, stdout io.Writer, quiet bool) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "LoadImage", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "LoadImage", ctx, img, stdout, quiet) ret0, _ := ret[0].(error) return ret0 } // LoadImage indicates an expected call of LoadImage. -func (mr *MockNerdctlImageSvcMockRecorder) LoadImage(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockNerdctlImageSvcMockRecorder) LoadImage(ctx, img, stdout, quiet any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoadImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).LoadImage), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoadImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).LoadImage), ctx, img, stdout, quiet) } // Namespace mocks base method. @@ -118,38 +124,38 @@ func (mr *MockNerdctlImageSvcMockRecorder) Namespace() *gomock.Call { } // PullImage mocks base method. -func (m *MockNerdctlImageSvc) PullImage(arg0 context.Context, arg1, arg2 io.Writer, arg3 remotes.Resolver, arg4 string, arg5 []v1.Platform) (*imgutil.EnsuredImage, error) { +func (m *MockNerdctlImageSvc) PullImage(ctx context.Context, stdout, stderr io.Writer, resolver remotes.Resolver, ref string, arg5 []v1.Platform) (*imgutil.EnsuredImage, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "PullImage", arg0, arg1, arg2, arg3, arg4, arg5) + ret := m.ctrl.Call(m, "PullImage", ctx, stdout, stderr, resolver, ref, arg5) ret0, _ := ret[0].(*imgutil.EnsuredImage) ret1, _ := ret[1].(error) return ret0, ret1 } // PullImage indicates an expected call of PullImage. -func (mr *MockNerdctlImageSvcMockRecorder) PullImage(arg0, arg1, arg2, arg3, arg4, arg5 interface{}) *gomock.Call { +func (mr *MockNerdctlImageSvcMockRecorder) PullImage(ctx, stdout, stderr, resolver, ref, arg5 any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PullImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).PullImage), arg0, arg1, arg2, arg3, arg4, arg5) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PullImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).PullImage), ctx, stdout, stderr, resolver, ref, arg5) } // PushImage mocks base method. -func (m *MockNerdctlImageSvc) PushImage(arg0 context.Context, arg1 remotes.Resolver, arg2 docker.StatusTracker, arg3 io.Writer, arg4, arg5 string, arg6 platforms.MatchComparer) error { +func (m *MockNerdctlImageSvc) PushImage(ctx context.Context, resolver remotes.Resolver, tracker docker.StatusTracker, stdout io.Writer, pushRef, ref string, platMC platforms.MatchComparer) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "PushImage", arg0, arg1, arg2, arg3, arg4, arg5, arg6) + ret := m.ctrl.Call(m, "PushImage", ctx, resolver, tracker, stdout, pushRef, ref, platMC) ret0, _ := ret[0].(error) return ret0 } // PushImage indicates an expected call of PushImage. -func (mr *MockNerdctlImageSvcMockRecorder) PushImage(arg0, arg1, arg2, arg3, arg4, arg5, arg6 interface{}) *gomock.Call { +func (mr *MockNerdctlImageSvcMockRecorder) PushImage(ctx, resolver, tracker, stdout, pushRef, ref, platMC any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PushImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).PushImage), arg0, arg1, arg2, arg3, arg4, arg5, arg6) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PushImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).PushImage), ctx, resolver, tracker, stdout, pushRef, ref, platMC) } // SearchImage mocks base method. -func (m *MockNerdctlImageSvc) SearchImage(arg0 context.Context, arg1 string) (int, int, []*images.Image, error) { +func (m *MockNerdctlImageSvc) SearchImage(ctx context.Context, name string) (int, int, []*images.Image, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SearchImage", arg0, arg1) + ret := m.ctrl.Call(m, "SearchImage", ctx, name) ret0, _ := ret[0].(int) ret1, _ := ret[1].(int) ret2, _ := ret[2].([]*images.Image) @@ -158,7 +164,7 @@ func (m *MockNerdctlImageSvc) SearchImage(arg0 context.Context, arg1 string) (in } // SearchImage indicates an expected call of SearchImage. -func (mr *MockNerdctlImageSvcMockRecorder) SearchImage(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNerdctlImageSvcMockRecorder) SearchImage(ctx, name any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).SearchImage), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchImage", reflect.TypeOf((*MockNerdctlImageSvc)(nil).SearchImage), ctx, name) } diff --git a/mocks/mocks_backend/nerdctlnetworksvc.go b/mocks/mocks_backend/nerdctlnetworksvc.go index 20e939b8..40a99845 100644 --- a/mocks/mocks_backend/nerdctlnetworksvc.go +++ b/mocks/mocks_backend/nerdctlnetworksvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/backend (interfaces: NerdctlNetworkSvc) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_backend/nerdctlnetworksvc.go -package=mocks_backend github.com/runfinch/finch-daemon/internal/backend NerdctlNetworkSvc +// // Package mocks_backend is a generated GoMock package. package mocks_backend @@ -13,13 +18,14 @@ import ( netutil "github.com/containerd/nerdctl/v2/pkg/netutil" libcni "github.com/containernetworking/cni/libcni" types0 "github.com/containernetworking/cni/pkg/types" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockNerdctlNetworkSvc is a mock of NerdctlNetworkSvc interface. type MockNerdctlNetworkSvc struct { ctrl *gomock.Controller recorder *MockNerdctlNetworkSvcMockRecorder + isgomock struct{} } // MockNerdctlNetworkSvcMockRecorder is the mock recorder for MockNerdctlNetworkSvc. @@ -40,63 +46,63 @@ func (m *MockNerdctlNetworkSvc) EXPECT() *MockNerdctlNetworkSvcMockRecorder { } // AddNetworkList mocks base method. -func (m *MockNerdctlNetworkSvc) AddNetworkList(arg0 context.Context, arg1 *libcni.NetworkConfigList, arg2 *libcni.RuntimeConf) (types0.Result, error) { +func (m *MockNerdctlNetworkSvc) AddNetworkList(ctx context.Context, netconflist *libcni.NetworkConfigList, conf *libcni.RuntimeConf) (types0.Result, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "AddNetworkList", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "AddNetworkList", ctx, netconflist, conf) ret0, _ := ret[0].(types0.Result) ret1, _ := ret[1].(error) return ret0, ret1 } // AddNetworkList indicates an expected call of AddNetworkList. -func (mr *MockNerdctlNetworkSvcMockRecorder) AddNetworkList(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockNerdctlNetworkSvcMockRecorder) AddNetworkList(ctx, netconflist, conf any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddNetworkList", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).AddNetworkList), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddNetworkList", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).AddNetworkList), ctx, netconflist, conf) } // CreateNetwork mocks base method. -func (m *MockNerdctlNetworkSvc) CreateNetwork(arg0 types.NetworkCreateOptions) (*netutil.NetworkConfig, error) { +func (m *MockNerdctlNetworkSvc) CreateNetwork(opts types.NetworkCreateOptions) (*netutil.NetworkConfig, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CreateNetwork", arg0) + ret := m.ctrl.Call(m, "CreateNetwork", opts) ret0, _ := ret[0].(*netutil.NetworkConfig) ret1, _ := ret[1].(error) return ret0, ret1 } // CreateNetwork indicates an expected call of CreateNetwork. -func (mr *MockNerdctlNetworkSvcMockRecorder) CreateNetwork(arg0 interface{}) *gomock.Call { +func (mr *MockNerdctlNetworkSvcMockRecorder) CreateNetwork(opts any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateNetwork", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).CreateNetwork), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateNetwork", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).CreateNetwork), opts) } // FilterNetworks mocks base method. -func (m *MockNerdctlNetworkSvc) FilterNetworks(arg0 func(*netutil.NetworkConfig) bool) ([]*netutil.NetworkConfig, error) { +func (m *MockNerdctlNetworkSvc) FilterNetworks(filterf func(*netutil.NetworkConfig) bool) ([]*netutil.NetworkConfig, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "FilterNetworks", arg0) + ret := m.ctrl.Call(m, "FilterNetworks", filterf) ret0, _ := ret[0].([]*netutil.NetworkConfig) ret1, _ := ret[1].(error) return ret0, ret1 } // FilterNetworks indicates an expected call of FilterNetworks. -func (mr *MockNerdctlNetworkSvcMockRecorder) FilterNetworks(arg0 interface{}) *gomock.Call { +func (mr *MockNerdctlNetworkSvcMockRecorder) FilterNetworks(filterf any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FilterNetworks", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).FilterNetworks), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FilterNetworks", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).FilterNetworks), filterf) } // InspectNetwork mocks base method. -func (m *MockNerdctlNetworkSvc) InspectNetwork(arg0 context.Context, arg1 *netutil.NetworkConfig) (*dockercompat.Network, error) { +func (m *MockNerdctlNetworkSvc) InspectNetwork(ctx context.Context, networkConfig *netutil.NetworkConfig) (*dockercompat.Network, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "InspectNetwork", arg0, arg1) + ret := m.ctrl.Call(m, "InspectNetwork", ctx, networkConfig) ret0, _ := ret[0].(*dockercompat.Network) ret1, _ := ret[1].(error) return ret0, ret1 } // InspectNetwork indicates an expected call of InspectNetwork. -func (mr *MockNerdctlNetworkSvcMockRecorder) InspectNetwork(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNerdctlNetworkSvcMockRecorder) InspectNetwork(ctx, networkConfig any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectNetwork", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).InspectNetwork), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InspectNetwork", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).InspectNetwork), ctx, networkConfig) } // Namespace mocks base method. @@ -128,30 +134,30 @@ func (mr *MockNerdctlNetworkSvcMockRecorder) NetconfPath() *gomock.Call { } // RemoveNetwork mocks base method. -func (m *MockNerdctlNetworkSvc) RemoveNetwork(arg0 *netutil.NetworkConfig) error { +func (m *MockNerdctlNetworkSvc) RemoveNetwork(networkConfig *netutil.NetworkConfig) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "RemoveNetwork", arg0) + ret := m.ctrl.Call(m, "RemoveNetwork", networkConfig) ret0, _ := ret[0].(error) return ret0 } // RemoveNetwork indicates an expected call of RemoveNetwork. -func (mr *MockNerdctlNetworkSvcMockRecorder) RemoveNetwork(arg0 interface{}) *gomock.Call { +func (mr *MockNerdctlNetworkSvcMockRecorder) RemoveNetwork(networkConfig any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveNetwork", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).RemoveNetwork), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveNetwork", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).RemoveNetwork), networkConfig) } // UsedNetworkInfo mocks base method. -func (m *MockNerdctlNetworkSvc) UsedNetworkInfo(arg0 context.Context) (map[string][]string, error) { +func (m *MockNerdctlNetworkSvc) UsedNetworkInfo(ctx context.Context) (map[string][]string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "UsedNetworkInfo", arg0) + ret := m.ctrl.Call(m, "UsedNetworkInfo", ctx) ret0, _ := ret[0].(map[string][]string) ret1, _ := ret[1].(error) return ret0, ret1 } // UsedNetworkInfo indicates an expected call of UsedNetworkInfo. -func (mr *MockNerdctlNetworkSvcMockRecorder) UsedNetworkInfo(arg0 interface{}) *gomock.Call { +func (mr *MockNerdctlNetworkSvcMockRecorder) UsedNetworkInfo(ctx any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UsedNetworkInfo", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).UsedNetworkInfo), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UsedNetworkInfo", reflect.TypeOf((*MockNerdctlNetworkSvc)(nil).UsedNetworkInfo), ctx) } diff --git a/mocks/mocks_backend/nerdctlsystemsvc.go b/mocks/mocks_backend/nerdctlsystemsvc.go index 8a351113..af4bebc6 100644 --- a/mocks/mocks_backend/nerdctlsystemsvc.go +++ b/mocks/mocks_backend/nerdctlsystemsvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/backend (interfaces: NerdctlSystemSvc) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_backend/nerdctlsystemsvc.go -package=mocks_backend github.com/runfinch/finch-daemon/internal/backend NerdctlSystemSvc +// // Package mocks_backend is a generated GoMock package. package mocks_backend @@ -9,13 +14,14 @@ import ( reflect "reflect" dockercompat "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockNerdctlSystemSvc is a mock of NerdctlSystemSvc interface. type MockNerdctlSystemSvc struct { ctrl *gomock.Controller recorder *MockNerdctlSystemSvcMockRecorder + isgomock struct{} } // MockNerdctlSystemSvcMockRecorder is the mock recorder for MockNerdctlSystemSvc. @@ -36,16 +42,16 @@ func (m *MockNerdctlSystemSvc) EXPECT() *MockNerdctlSystemSvcMockRecorder { } // GetServerVersion mocks base method. -func (m *MockNerdctlSystemSvc) GetServerVersion(arg0 context.Context) (*dockercompat.ServerVersion, error) { +func (m *MockNerdctlSystemSvc) GetServerVersion(ctx context.Context) (*dockercompat.ServerVersion, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetServerVersion", arg0) + ret := m.ctrl.Call(m, "GetServerVersion", ctx) ret0, _ := ret[0].(*dockercompat.ServerVersion) ret1, _ := ret[1].(error) return ret0, ret1 } // GetServerVersion indicates an expected call of GetServerVersion. -func (mr *MockNerdctlSystemSvcMockRecorder) GetServerVersion(arg0 interface{}) *gomock.Call { +func (mr *MockNerdctlSystemSvcMockRecorder) GetServerVersion(ctx any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetServerVersion", reflect.TypeOf((*MockNerdctlSystemSvc)(nil).GetServerVersion), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetServerVersion", reflect.TypeOf((*MockNerdctlSystemSvc)(nil).GetServerVersion), ctx) } diff --git a/mocks/mocks_backend/nerdctlvolumesvc.go b/mocks/mocks_backend/nerdctlvolumesvc.go index f51d4aab..7620fbf5 100644 --- a/mocks/mocks_backend/nerdctlvolumesvc.go +++ b/mocks/mocks_backend/nerdctlvolumesvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/backend (interfaces: NerdctlVolumeSvc) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_backend/nerdctlvolumesvc.go -package=mocks_backend github.com/runfinch/finch-daemon/internal/backend NerdctlVolumeSvc +// // Package mocks_backend is a generated GoMock package. package mocks_backend @@ -10,13 +15,14 @@ import ( reflect "reflect" native "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockNerdctlVolumeSvc is a mock of NerdctlVolumeSvc interface. type MockNerdctlVolumeSvc struct { ctrl *gomock.Controller recorder *MockNerdctlVolumeSvcMockRecorder + isgomock struct{} } // MockNerdctlVolumeSvcMockRecorder is the mock recorder for MockNerdctlVolumeSvc. @@ -37,60 +43,60 @@ func (m *MockNerdctlVolumeSvc) EXPECT() *MockNerdctlVolumeSvcMockRecorder { } // CreateVolume mocks base method. -func (m *MockNerdctlVolumeSvc) CreateVolume(arg0 string, arg1 []string) (*native.Volume, error) { +func (m *MockNerdctlVolumeSvc) CreateVolume(name string, labels []string) (*native.Volume, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CreateVolume", arg0, arg1) + ret := m.ctrl.Call(m, "CreateVolume", name, labels) ret0, _ := ret[0].(*native.Volume) ret1, _ := ret[1].(error) return ret0, ret1 } // CreateVolume indicates an expected call of CreateVolume. -func (mr *MockNerdctlVolumeSvcMockRecorder) CreateVolume(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNerdctlVolumeSvcMockRecorder) CreateVolume(name, labels any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateVolume", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).CreateVolume), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateVolume", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).CreateVolume), name, labels) } // GetVolume mocks base method. -func (m *MockNerdctlVolumeSvc) GetVolume(arg0 string) (*native.Volume, error) { +func (m *MockNerdctlVolumeSvc) GetVolume(name string) (*native.Volume, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetVolume", arg0) + ret := m.ctrl.Call(m, "GetVolume", name) ret0, _ := ret[0].(*native.Volume) ret1, _ := ret[1].(error) return ret0, ret1 } // GetVolume indicates an expected call of GetVolume. -func (mr *MockNerdctlVolumeSvcMockRecorder) GetVolume(arg0 interface{}) *gomock.Call { +func (mr *MockNerdctlVolumeSvcMockRecorder) GetVolume(name any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetVolume", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).GetVolume), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetVolume", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).GetVolume), name) } // ListVolumes mocks base method. -func (m *MockNerdctlVolumeSvc) ListVolumes(arg0 bool, arg1 []string) (map[string]native.Volume, error) { +func (m *MockNerdctlVolumeSvc) ListVolumes(size bool, filters []string) (map[string]native.Volume, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ListVolumes", arg0, arg1) + ret := m.ctrl.Call(m, "ListVolumes", size, filters) ret0, _ := ret[0].(map[string]native.Volume) ret1, _ := ret[1].(error) return ret0, ret1 } // ListVolumes indicates an expected call of ListVolumes. -func (mr *MockNerdctlVolumeSvcMockRecorder) ListVolumes(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNerdctlVolumeSvcMockRecorder) ListVolumes(size, filters any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListVolumes", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).ListVolumes), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListVolumes", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).ListVolumes), size, filters) } // RemoveVolume mocks base method. -func (m *MockNerdctlVolumeSvc) RemoveVolume(arg0 context.Context, arg1 string, arg2 bool, arg3 io.Writer) error { +func (m *MockNerdctlVolumeSvc) RemoveVolume(ctx context.Context, name string, force bool, stdout io.Writer) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "RemoveVolume", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "RemoveVolume", ctx, name, force, stdout) ret0, _ := ret[0].(error) return ret0 } // RemoveVolume indicates an expected call of RemoveVolume. -func (mr *MockNerdctlVolumeSvcMockRecorder) RemoveVolume(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockNerdctlVolumeSvcMockRecorder) RemoveVolume(ctx, name, force, stdout any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveVolume", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).RemoveVolume), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveVolume", reflect.TypeOf((*MockNerdctlVolumeSvc)(nil).RemoveVolume), ctx, name, force, stdout) } diff --git a/mocks/mocks_builder/buildersvc.go b/mocks/mocks_builder/buildersvc.go index 25a1a69a..863baded 100644 --- a/mocks/mocks_builder/buildersvc.go +++ b/mocks/mocks_builder/buildersvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/builder (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_builder/buildersvc.go -package=mocks_builder github.com/runfinch/finch-daemon/api/handlers/builder Service +// // Package mocks_builder is a generated GoMock package. package mocks_builder @@ -10,14 +15,15 @@ import ( reflect "reflect" types "github.com/containerd/nerdctl/v2/pkg/api/types" - gomock "github.com/golang/mock/gomock" types0 "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -38,16 +44,16 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Build mocks base method. -func (m *MockService) Build(arg0 context.Context, arg1 *types.BuilderBuildOptions, arg2 io.ReadCloser) ([]types0.BuildResult, error) { +func (m *MockService) Build(ctx context.Context, options *types.BuilderBuildOptions, tarBody io.ReadCloser) ([]types0.BuildResult, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Build", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Build", ctx, options, tarBody) ret0, _ := ret[0].([]types0.BuildResult) ret1, _ := ret[1].(error) return ret0, ret1 } // Build indicates an expected call of Build. -func (mr *MockServiceMockRecorder) Build(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Build(ctx, options, tarBody any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Build", reflect.TypeOf((*MockService)(nil).Build), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Build", reflect.TypeOf((*MockService)(nil).Build), ctx, options, tarBody) } diff --git a/mocks/mocks_cio/io.go b/mocks/mocks_cio/io.go index 1cd2424e..e40b24b2 100644 --- a/mocks/mocks_cio/io.go +++ b/mocks/mocks_cio/io.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/containerd/containerd/v2/pkg/cio (interfaces: IO) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_cio/io.go -package=mocks_cio github.com/containerd/containerd/v2/pkg/cio IO +// // Package mocks_cio is a generated GoMock package. package mocks_cio @@ -8,13 +13,14 @@ import ( reflect "reflect" cio "github.com/containerd/containerd/v2/pkg/cio" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockIO is a mock of IO interface. type MockIO struct { ctrl *gomock.Controller recorder *MockIOMockRecorder + isgomock struct{} } // MockIOMockRecorder is the mock recorder for MockIO. diff --git a/mocks/mocks_container/container.go b/mocks/mocks_container/container.go index 62bbf05d..e287d25b 100644 --- a/mocks/mocks_container/container.go +++ b/mocks/mocks_container/container.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/containerd/containerd/v2/client (interfaces: Container) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_container/container.go -package=mocks_container github.com/containerd/containerd/v2/client Container +// // Package mocks_container is a generated GoMock package. package mocks_container @@ -11,15 +16,16 @@ import ( client "github.com/containerd/containerd/v2/client" containers "github.com/containerd/containerd/v2/core/containers" cio "github.com/containerd/containerd/v2/pkg/cio" + oci "github.com/containerd/containerd/v2/pkg/oci" typeurl "github.com/containerd/typeurl/v2" - gomock "github.com/golang/mock/gomock" - specs "github.com/opencontainers/runtime-spec/specs-go" + gomock "go.uber.org/mock/gomock" ) // MockContainer is a mock of Container interface. type MockContainer struct { ctrl *gomock.Controller recorder *MockContainerMockRecorder + isgomock struct{} } // MockContainerMockRecorder is the mock recorder for MockContainer. @@ -42,7 +48,7 @@ func (m *MockContainer) EXPECT() *MockContainerMockRecorder { // Checkpoint mocks base method. func (m *MockContainer) Checkpoint(arg0 context.Context, arg1 string, arg2 ...client.CheckpointOpts) (client.Image, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} + varargs := []any{arg0, arg1} for _, a := range arg2 { varargs = append(varargs, a) } @@ -53,16 +59,16 @@ func (m *MockContainer) Checkpoint(arg0 context.Context, arg1 string, arg2 ...cl } // Checkpoint indicates an expected call of Checkpoint. -func (mr *MockContainerMockRecorder) Checkpoint(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Checkpoint(arg0, arg1 any, arg2 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{arg0, arg1}, arg2...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Checkpoint", reflect.TypeOf((*MockContainer)(nil).Checkpoint), varargs...) } // Delete mocks base method. func (m *MockContainer) Delete(arg0 context.Context, arg1 ...client.DeleteOpts) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -72,9 +78,9 @@ func (m *MockContainer) Delete(arg0 context.Context, arg1 ...client.DeleteOpts) } // Delete indicates an expected call of Delete. -func (mr *MockContainerMockRecorder) Delete(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Delete(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockContainer)(nil).Delete), varargs...) } @@ -88,7 +94,7 @@ func (m *MockContainer) Extensions(arg0 context.Context) (map[string]typeurl.Any } // Extensions indicates an expected call of Extensions. -func (mr *MockContainerMockRecorder) Extensions(arg0 interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Extensions(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Extensions", reflect.TypeOf((*MockContainer)(nil).Extensions), arg0) } @@ -117,7 +123,7 @@ func (m *MockContainer) Image(arg0 context.Context) (client.Image, error) { } // Image indicates an expected call of Image. -func (mr *MockContainerMockRecorder) Image(arg0 interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Image(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Image", reflect.TypeOf((*MockContainer)(nil).Image), arg0) } @@ -125,7 +131,7 @@ func (mr *MockContainerMockRecorder) Image(arg0 interface{}) *gomock.Call { // Info mocks base method. func (m *MockContainer) Info(arg0 context.Context, arg1 ...client.InfoOpts) (containers.Container, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -136,9 +142,9 @@ func (m *MockContainer) Info(arg0 context.Context, arg1 ...client.InfoOpts) (con } // Info indicates an expected call of Info. -func (mr *MockContainerMockRecorder) Info(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Info(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Info", reflect.TypeOf((*MockContainer)(nil).Info), varargs...) } @@ -152,7 +158,7 @@ func (m *MockContainer) Labels(arg0 context.Context) (map[string]string, error) } // Labels indicates an expected call of Labels. -func (mr *MockContainerMockRecorder) Labels(arg0 interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Labels(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Labels", reflect.TypeOf((*MockContainer)(nil).Labels), arg0) } @@ -160,7 +166,7 @@ func (mr *MockContainerMockRecorder) Labels(arg0 interface{}) *gomock.Call { // NewTask mocks base method. func (m *MockContainer) NewTask(arg0 context.Context, arg1 cio.Creator, arg2 ...client.NewTaskOpts) (client.Task, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} + varargs := []any{arg0, arg1} for _, a := range arg2 { varargs = append(varargs, a) } @@ -171,12 +177,27 @@ func (m *MockContainer) NewTask(arg0 context.Context, arg1 cio.Creator, arg2 ... } // NewTask indicates an expected call of NewTask. -func (mr *MockContainerMockRecorder) NewTask(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) NewTask(arg0, arg1 any, arg2 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{arg0, arg1}, arg2...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewTask", reflect.TypeOf((*MockContainer)(nil).NewTask), varargs...) } +// Restore mocks base method. +func (m *MockContainer) Restore(arg0 context.Context, arg1 cio.Creator, arg2 string) (int, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Restore", arg0, arg1, arg2) + ret0, _ := ret[0].(int) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// Restore indicates an expected call of Restore. +func (mr *MockContainerMockRecorder) Restore(arg0, arg1, arg2 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Restore", reflect.TypeOf((*MockContainer)(nil).Restore), arg0, arg1, arg2) +} + // SetLabels mocks base method. func (m *MockContainer) SetLabels(arg0 context.Context, arg1 map[string]string) (map[string]string, error) { m.ctrl.T.Helper() @@ -187,22 +208,22 @@ func (m *MockContainer) SetLabels(arg0 context.Context, arg1 map[string]string) } // SetLabels indicates an expected call of SetLabels. -func (mr *MockContainerMockRecorder) SetLabels(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) SetLabels(arg0, arg1 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetLabels", reflect.TypeOf((*MockContainer)(nil).SetLabels), arg0, arg1) } // Spec mocks base method. -func (m *MockContainer) Spec(arg0 context.Context) (*specs.Spec, error) { +func (m *MockContainer) Spec(arg0 context.Context) (*oci.Spec, error) { m.ctrl.T.Helper() ret := m.ctrl.Call(m, "Spec", arg0) - ret0, _ := ret[0].(*specs.Spec) + ret0, _ := ret[0].(*oci.Spec) ret1, _ := ret[1].(error) return ret0, ret1 } // Spec indicates an expected call of Spec. -func (mr *MockContainerMockRecorder) Spec(arg0 interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Spec(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Spec", reflect.TypeOf((*MockContainer)(nil).Spec), arg0) } @@ -217,7 +238,7 @@ func (m *MockContainer) Task(arg0 context.Context, arg1 cio.Attach) (client.Task } // Task indicates an expected call of Task. -func (mr *MockContainerMockRecorder) Task(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Task(arg0, arg1 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Task", reflect.TypeOf((*MockContainer)(nil).Task), arg0, arg1) } @@ -225,7 +246,7 @@ func (mr *MockContainerMockRecorder) Task(arg0, arg1 interface{}) *gomock.Call { // Update mocks base method. func (m *MockContainer) Update(arg0 context.Context, arg1 ...client.UpdateContainerOpts) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -235,8 +256,8 @@ func (m *MockContainer) Update(arg0 context.Context, arg1 ...client.UpdateContai } // Update indicates an expected call of Update. -func (mr *MockContainerMockRecorder) Update(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockContainerMockRecorder) Update(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockContainer)(nil).Update), varargs...) } diff --git a/mocks/mocks_container/containersvc.go b/mocks/mocks_container/containersvc.go index ebada112..322e358b 100644 --- a/mocks/mocks_container/containersvc.go +++ b/mocks/mocks_container/containersvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/container (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_container/containersvc.go -package=mocks_container github.com/runfinch/finch-daemon/api/handlers/container Service +// // Package mocks_container is a generated GoMock package. package mocks_container @@ -10,14 +15,15 @@ import ( reflect "reflect" types "github.com/containerd/nerdctl/v2/pkg/api/types" - gomock "github.com/golang/mock/gomock" types0 "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -38,67 +44,67 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Attach mocks base method. -func (m *MockService) Attach(arg0 context.Context, arg1 string, arg2 *types0.AttachOptions) error { +func (m *MockService) Attach(ctx context.Context, cid string, opts *types0.AttachOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Attach", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Attach", ctx, cid, opts) ret0, _ := ret[0].(error) return ret0 } // Attach indicates an expected call of Attach. -func (mr *MockServiceMockRecorder) Attach(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Attach(ctx, cid, opts any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Attach", reflect.TypeOf((*MockService)(nil).Attach), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Attach", reflect.TypeOf((*MockService)(nil).Attach), ctx, cid, opts) } // Create mocks base method. -func (m *MockService) Create(arg0 context.Context, arg1 string, arg2 []string, arg3 types.ContainerCreateOptions, arg4 types.NetworkOptions) (string, error) { +func (m *MockService) Create(ctx context.Context, image string, cmd []string, createOpt types.ContainerCreateOptions, netOpt types.NetworkOptions) (string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Create", arg0, arg1, arg2, arg3, arg4) + ret := m.ctrl.Call(m, "Create", ctx, image, cmd, createOpt, netOpt) ret0, _ := ret[0].(string) ret1, _ := ret[1].(error) return ret0, ret1 } // Create indicates an expected call of Create. -func (mr *MockServiceMockRecorder) Create(arg0, arg1, arg2, arg3, arg4 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Create(ctx, image, cmd, createOpt, netOpt any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockService)(nil).Create), arg0, arg1, arg2, arg3, arg4) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockService)(nil).Create), ctx, image, cmd, createOpt, netOpt) } // ExecCreate mocks base method. -func (m *MockService) ExecCreate(arg0 context.Context, arg1 string, arg2 types0.ExecConfig) (string, error) { +func (m *MockService) ExecCreate(ctx context.Context, cid string, config types0.ExecConfig) (string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ExecCreate", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "ExecCreate", ctx, cid, config) ret0, _ := ret[0].(string) ret1, _ := ret[1].(error) return ret0, ret1 } // ExecCreate indicates an expected call of ExecCreate. -func (mr *MockServiceMockRecorder) ExecCreate(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) ExecCreate(ctx, cid, config any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExecCreate", reflect.TypeOf((*MockService)(nil).ExecCreate), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExecCreate", reflect.TypeOf((*MockService)(nil).ExecCreate), ctx, cid, config) } // ExtractArchiveInContainer mocks base method. -func (m *MockService) ExtractArchiveInContainer(arg0 context.Context, arg1 *types0.PutArchiveOptions, arg2 io.ReadCloser) error { +func (m *MockService) ExtractArchiveInContainer(ctx context.Context, putArchiveOpt *types0.PutArchiveOptions, body io.ReadCloser) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ExtractArchiveInContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "ExtractArchiveInContainer", ctx, putArchiveOpt, body) ret0, _ := ret[0].(error) return ret0 } // ExtractArchiveInContainer indicates an expected call of ExtractArchiveInContainer. -func (mr *MockServiceMockRecorder) ExtractArchiveInContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) ExtractArchiveInContainer(ctx, putArchiveOpt, body any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExtractArchiveInContainer", reflect.TypeOf((*MockService)(nil).ExtractArchiveInContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ExtractArchiveInContainer", reflect.TypeOf((*MockService)(nil).ExtractArchiveInContainer), ctx, putArchiveOpt, body) } // GetPathToFilesInContainer mocks base method. -func (m *MockService) GetPathToFilesInContainer(arg0 context.Context, arg1, arg2 string) (string, func(), error) { +func (m *MockService) GetPathToFilesInContainer(ctx context.Context, cid, path string) (string, func(), error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetPathToFilesInContainer", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "GetPathToFilesInContainer", ctx, cid, path) ret0, _ := ret[0].(string) ret1, _ := ret[1].(func()) ret2, _ := ret[2].(error) @@ -106,206 +112,206 @@ func (m *MockService) GetPathToFilesInContainer(arg0 context.Context, arg1, arg2 } // GetPathToFilesInContainer indicates an expected call of GetPathToFilesInContainer. -func (mr *MockServiceMockRecorder) GetPathToFilesInContainer(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) GetPathToFilesInContainer(ctx, cid, path any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPathToFilesInContainer", reflect.TypeOf((*MockService)(nil).GetPathToFilesInContainer), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPathToFilesInContainer", reflect.TypeOf((*MockService)(nil).GetPathToFilesInContainer), ctx, cid, path) } // Inspect mocks base method. -func (m *MockService) Inspect(arg0 context.Context, arg1 string, arg2 bool) (*types0.Container, error) { +func (m *MockService) Inspect(ctx context.Context, cid string, size bool) (*types0.Container, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Inspect", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Inspect", ctx, cid, size) ret0, _ := ret[0].(*types0.Container) ret1, _ := ret[1].(error) return ret0, ret1 } // Inspect indicates an expected call of Inspect. -func (mr *MockServiceMockRecorder) Inspect(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Inspect(ctx, cid, size any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), ctx, cid, size) } // Kill mocks base method. -func (m *MockService) Kill(arg0 context.Context, arg1 string, arg2 types.ContainerKillOptions) error { +func (m *MockService) Kill(ctx context.Context, cid string, options types.ContainerKillOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Kill", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Kill", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // Kill indicates an expected call of Kill. -func (mr *MockServiceMockRecorder) Kill(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Kill(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Kill", reflect.TypeOf((*MockService)(nil).Kill), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Kill", reflect.TypeOf((*MockService)(nil).Kill), ctx, cid, options) } // List mocks base method. -func (m *MockService) List(arg0 context.Context, arg1 types.ContainerListOptions) ([]types0.ContainerListItem, error) { +func (m *MockService) List(ctx context.Context, listOpts types.ContainerListOptions) ([]types0.ContainerListItem, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "List", arg0, arg1) + ret := m.ctrl.Call(m, "List", ctx, listOpts) ret0, _ := ret[0].([]types0.ContainerListItem) ret1, _ := ret[1].(error) return ret0, ret1 } // List indicates an expected call of List. -func (mr *MockServiceMockRecorder) List(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) List(ctx, listOpts any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), ctx, listOpts) } // Logs mocks base method. -func (m *MockService) Logs(arg0 context.Context, arg1 string, arg2 *types0.LogsOptions) error { +func (m *MockService) Logs(ctx context.Context, cid string, opts *types0.LogsOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Logs", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Logs", ctx, cid, opts) ret0, _ := ret[0].(error) return ret0 } // Logs indicates an expected call of Logs. -func (mr *MockServiceMockRecorder) Logs(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Logs(ctx, cid, opts any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Logs", reflect.TypeOf((*MockService)(nil).Logs), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Logs", reflect.TypeOf((*MockService)(nil).Logs), ctx, cid, opts) } // Pause mocks base method. -func (m *MockService) Pause(arg0 context.Context, arg1 string, arg2 types.ContainerPauseOptions) error { +func (m *MockService) Pause(ctx context.Context, cid string, options types.ContainerPauseOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Pause", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Pause", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // Pause indicates an expected call of Pause. -func (mr *MockServiceMockRecorder) Pause(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Pause(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pause", reflect.TypeOf((*MockService)(nil).Pause), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pause", reflect.TypeOf((*MockService)(nil).Pause), ctx, cid, options) } // Remove mocks base method. -func (m *MockService) Remove(arg0 context.Context, arg1 string, arg2, arg3 bool) error { +func (m *MockService) Remove(ctx context.Context, cid string, force, removeVolumes bool) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Remove", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "Remove", ctx, cid, force, removeVolumes) ret0, _ := ret[0].(error) return ret0 } // Remove indicates an expected call of Remove. -func (mr *MockServiceMockRecorder) Remove(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Remove(ctx, cid, force, removeVolumes any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), ctx, cid, force, removeVolumes) } // Rename mocks base method. -func (m *MockService) Rename(arg0 context.Context, arg1, arg2 string, arg3 types.ContainerRenameOptions) error { +func (m *MockService) Rename(ctx context.Context, cid, newName string, opts types.ContainerRenameOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Rename", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "Rename", ctx, cid, newName, opts) ret0, _ := ret[0].(error) return ret0 } // Rename indicates an expected call of Rename. -func (mr *MockServiceMockRecorder) Rename(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Rename(ctx, cid, newName, opts any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Rename", reflect.TypeOf((*MockService)(nil).Rename), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Rename", reflect.TypeOf((*MockService)(nil).Rename), ctx, cid, newName, opts) } // Restart mocks base method. -func (m *MockService) Restart(arg0 context.Context, arg1 string, arg2 types.ContainerRestartOptions) error { +func (m *MockService) Restart(ctx context.Context, cid string, options types.ContainerRestartOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Restart", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Restart", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // Restart indicates an expected call of Restart. -func (mr *MockServiceMockRecorder) Restart(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Restart(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Restart", reflect.TypeOf((*MockService)(nil).Restart), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Restart", reflect.TypeOf((*MockService)(nil).Restart), ctx, cid, options) } // Start mocks base method. -func (m *MockService) Start(arg0 context.Context, arg1 string, arg2 types.ContainerStartOptions) error { +func (m *MockService) Start(ctx context.Context, cid string, options types.ContainerStartOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Start", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Start", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // Start indicates an expected call of Start. -func (mr *MockServiceMockRecorder) Start(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Start(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockService)(nil).Start), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockService)(nil).Start), ctx, cid, options) } // Stats mocks base method. -func (m *MockService) Stats(arg0 context.Context, arg1 string) (<-chan *types0.StatsJSON, error) { +func (m *MockService) Stats(ctx context.Context, cid string) (<-chan *types0.StatsJSON, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Stats", arg0, arg1) + ret := m.ctrl.Call(m, "Stats", ctx, cid) ret0, _ := ret[0].(<-chan *types0.StatsJSON) ret1, _ := ret[1].(error) return ret0, ret1 } // Stats indicates an expected call of Stats. -func (mr *MockServiceMockRecorder) Stats(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Stats(ctx, cid any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stats", reflect.TypeOf((*MockService)(nil).Stats), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stats", reflect.TypeOf((*MockService)(nil).Stats), ctx, cid) } // Stop mocks base method. -func (m *MockService) Stop(arg0 context.Context, arg1 string, arg2 types.ContainerStopOptions) error { +func (m *MockService) Stop(ctx context.Context, cid string, option types.ContainerStopOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Stop", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Stop", ctx, cid, option) ret0, _ := ret[0].(error) return ret0 } // Stop indicates an expected call of Stop. -func (mr *MockServiceMockRecorder) Stop(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Stop(ctx, cid, option any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stop", reflect.TypeOf((*MockService)(nil).Stop), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stop", reflect.TypeOf((*MockService)(nil).Stop), ctx, cid, option) } // Unpause mocks base method. -func (m *MockService) Unpause(arg0 context.Context, arg1 string, arg2 types.ContainerUnpauseOptions) error { +func (m *MockService) Unpause(ctx context.Context, cid string, options types.ContainerUnpauseOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Unpause", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Unpause", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // Unpause indicates an expected call of Unpause. -func (mr *MockServiceMockRecorder) Unpause(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Unpause(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Unpause", reflect.TypeOf((*MockService)(nil).Unpause), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Unpause", reflect.TypeOf((*MockService)(nil).Unpause), ctx, cid, options) } // Wait mocks base method. -func (m *MockService) Wait(arg0 context.Context, arg1 string, arg2 types.ContainerWaitOptions) error { +func (m *MockService) Wait(ctx context.Context, cid string, options types.ContainerWaitOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Wait", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Wait", ctx, cid, options) ret0, _ := ret[0].(error) return ret0 } // Wait indicates an expected call of Wait. -func (mr *MockServiceMockRecorder) Wait(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Wait(ctx, cid, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Wait", reflect.TypeOf((*MockService)(nil).Wait), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Wait", reflect.TypeOf((*MockService)(nil).Wait), ctx, cid, options) } // WriteFilesAsTarArchive mocks base method. -func (m *MockService) WriteFilesAsTarArchive(arg0 string, arg1 io.Writer, arg2 bool) error { +func (m *MockService) WriteFilesAsTarArchive(filePath string, writer io.Writer, slashDot bool) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "WriteFilesAsTarArchive", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "WriteFilesAsTarArchive", filePath, writer, slashDot) ret0, _ := ret[0].(error) return ret0 } // WriteFilesAsTarArchive indicates an expected call of WriteFilesAsTarArchive. -func (mr *MockServiceMockRecorder) WriteFilesAsTarArchive(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) WriteFilesAsTarArchive(filePath, writer, slashDot any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WriteFilesAsTarArchive", reflect.TypeOf((*MockService)(nil).WriteFilesAsTarArchive), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WriteFilesAsTarArchive", reflect.TypeOf((*MockService)(nil).WriteFilesAsTarArchive), filePath, writer, slashDot) } diff --git a/mocks/mocks_container/network_manager.go b/mocks/mocks_container/network_manager.go index f69c17c6..0c76f036 100644 --- a/mocks/mocks_container/network_manager.go +++ b/mocks/mocks_container/network_manager.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/containerd/nerdctl/v2/pkg/containerutil (interfaces: NetworkOptionsManager) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_container/network_manager.go -package=mocks_container github.com/containerd/nerdctl/v2/pkg/containerutil NetworkOptionsManager +// // Package mocks_container is a generated GoMock package. package mocks_container @@ -11,13 +16,14 @@ import ( client "github.com/containerd/containerd/v2/client" oci "github.com/containerd/containerd/v2/pkg/oci" types "github.com/containerd/nerdctl/v2/pkg/api/types" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockNetworkOptionsManager is a mock of NetworkOptionsManager interface. type MockNetworkOptionsManager struct { ctrl *gomock.Controller recorder *MockNetworkOptionsManagerMockRecorder + isgomock struct{} } // MockNetworkOptionsManagerMockRecorder is the mock recorder for MockNetworkOptionsManager. @@ -46,7 +52,7 @@ func (m *MockNetworkOptionsManager) CleanupNetworking(arg0 context.Context, arg1 } // CleanupNetworking indicates an expected call of CleanupNetworking. -func (mr *MockNetworkOptionsManagerMockRecorder) CleanupNetworking(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNetworkOptionsManagerMockRecorder) CleanupNetworking(arg0, arg1 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CleanupNetworking", reflect.TypeOf((*MockNetworkOptionsManager)(nil).CleanupNetworking), arg0, arg1) } @@ -62,7 +68,7 @@ func (m *MockNetworkOptionsManager) ContainerNetworkingOpts(arg0 context.Context } // ContainerNetworkingOpts indicates an expected call of ContainerNetworkingOpts. -func (mr *MockNetworkOptionsManagerMockRecorder) ContainerNetworkingOpts(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNetworkOptionsManagerMockRecorder) ContainerNetworkingOpts(arg0, arg1 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ContainerNetworkingOpts", reflect.TypeOf((*MockNetworkOptionsManager)(nil).ContainerNetworkingOpts), arg0, arg1) } @@ -77,7 +83,7 @@ func (m *MockNetworkOptionsManager) InternalNetworkingOptionLabels(arg0 context. } // InternalNetworkingOptionLabels indicates an expected call of InternalNetworkingOptionLabels. -func (mr *MockNetworkOptionsManagerMockRecorder) InternalNetworkingOptionLabels(arg0 interface{}) *gomock.Call { +func (mr *MockNetworkOptionsManagerMockRecorder) InternalNetworkingOptionLabels(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InternalNetworkingOptionLabels", reflect.TypeOf((*MockNetworkOptionsManager)(nil).InternalNetworkingOptionLabels), arg0) } @@ -105,7 +111,7 @@ func (m *MockNetworkOptionsManager) SetupNetworking(arg0 context.Context, arg1 s } // SetupNetworking indicates an expected call of SetupNetworking. -func (mr *MockNetworkOptionsManagerMockRecorder) SetupNetworking(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockNetworkOptionsManagerMockRecorder) SetupNetworking(arg0, arg1 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetupNetworking", reflect.TypeOf((*MockNetworkOptionsManager)(nil).SetupNetworking), arg0, arg1) } @@ -119,7 +125,7 @@ func (m *MockNetworkOptionsManager) VerifyNetworkOptions(arg0 context.Context) e } // VerifyNetworkOptions indicates an expected call of VerifyNetworkOptions. -func (mr *MockNetworkOptionsManagerMockRecorder) VerifyNetworkOptions(arg0 interface{}) *gomock.Call { +func (mr *MockNetworkOptionsManagerMockRecorder) VerifyNetworkOptions(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "VerifyNetworkOptions", reflect.TypeOf((*MockNetworkOptionsManager)(nil).VerifyNetworkOptions), arg0) } diff --git a/mocks/mocks_container/process.go b/mocks/mocks_container/process.go index f7aeb875..cbfc344f 100644 --- a/mocks/mocks_container/process.go +++ b/mocks/mocks_container/process.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/containerd/containerd/v2/client (interfaces: Process) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_container/process.go -package=mocks_container github.com/containerd/containerd/v2/client Process +// // Package mocks_container is a generated GoMock package. package mocks_container @@ -11,13 +16,14 @@ import ( client "github.com/containerd/containerd/v2/client" cio "github.com/containerd/containerd/v2/pkg/cio" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockProcess is a mock of Process interface. type MockProcess struct { ctrl *gomock.Controller recorder *MockProcessMockRecorder + isgomock struct{} } // MockProcessMockRecorder is the mock recorder for MockProcess. @@ -40,7 +46,7 @@ func (m *MockProcess) EXPECT() *MockProcessMockRecorder { // CloseIO mocks base method. func (m *MockProcess) CloseIO(arg0 context.Context, arg1 ...client.IOCloserOpts) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -50,16 +56,16 @@ func (m *MockProcess) CloseIO(arg0 context.Context, arg1 ...client.IOCloserOpts) } // CloseIO indicates an expected call of CloseIO. -func (mr *MockProcessMockRecorder) CloseIO(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockProcessMockRecorder) CloseIO(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseIO", reflect.TypeOf((*MockProcess)(nil).CloseIO), varargs...) } // Delete mocks base method. func (m *MockProcess) Delete(arg0 context.Context, arg1 ...client.ProcessDeleteOpts) (*client.ExitStatus, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -70,9 +76,9 @@ func (m *MockProcess) Delete(arg0 context.Context, arg1 ...client.ProcessDeleteO } // Delete indicates an expected call of Delete. -func (mr *MockProcessMockRecorder) Delete(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockProcessMockRecorder) Delete(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockProcess)(nil).Delete), varargs...) } @@ -107,7 +113,7 @@ func (mr *MockProcessMockRecorder) IO() *gomock.Call { // Kill mocks base method. func (m *MockProcess) Kill(arg0 context.Context, arg1 syscall.Signal, arg2 ...client.KillOpts) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} + varargs := []any{arg0, arg1} for _, a := range arg2 { varargs = append(varargs, a) } @@ -117,9 +123,9 @@ func (m *MockProcess) Kill(arg0 context.Context, arg1 syscall.Signal, arg2 ...cl } // Kill indicates an expected call of Kill. -func (mr *MockProcessMockRecorder) Kill(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockProcessMockRecorder) Kill(arg0, arg1 any, arg2 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{arg0, arg1}, arg2...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Kill", reflect.TypeOf((*MockProcess)(nil).Kill), varargs...) } @@ -138,17 +144,17 @@ func (mr *MockProcessMockRecorder) Pid() *gomock.Call { } // Resize mocks base method. -func (m *MockProcess) Resize(arg0 context.Context, arg1, arg2 uint32) error { +func (m *MockProcess) Resize(ctx context.Context, w, h uint32) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Resize", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Resize", ctx, w, h) ret0, _ := ret[0].(error) return ret0 } // Resize indicates an expected call of Resize. -func (mr *MockProcessMockRecorder) Resize(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockProcessMockRecorder) Resize(ctx, w, h any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resize", reflect.TypeOf((*MockProcess)(nil).Resize), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resize", reflect.TypeOf((*MockProcess)(nil).Resize), ctx, w, h) } // Start mocks base method. @@ -160,7 +166,7 @@ func (m *MockProcess) Start(arg0 context.Context) error { } // Start indicates an expected call of Start. -func (mr *MockProcessMockRecorder) Start(arg0 interface{}) *gomock.Call { +func (mr *MockProcessMockRecorder) Start(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockProcess)(nil).Start), arg0) } @@ -175,7 +181,7 @@ func (m *MockProcess) Status(arg0 context.Context) (client.Status, error) { } // Status indicates an expected call of Status. -func (mr *MockProcessMockRecorder) Status(arg0 interface{}) *gomock.Call { +func (mr *MockProcessMockRecorder) Status(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Status", reflect.TypeOf((*MockProcess)(nil).Status), arg0) } @@ -190,7 +196,7 @@ func (m *MockProcess) Wait(arg0 context.Context) (<-chan client.ExitStatus, erro } // Wait indicates an expected call of Wait. -func (mr *MockProcessMockRecorder) Wait(arg0 interface{}) *gomock.Call { +func (mr *MockProcessMockRecorder) Wait(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Wait", reflect.TypeOf((*MockProcess)(nil).Wait), arg0) } diff --git a/mocks/mocks_container/task.go b/mocks/mocks_container/task.go index 740362c4..074f318a 100644 --- a/mocks/mocks_container/task.go +++ b/mocks/mocks_container/task.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/containerd/containerd/v2/client (interfaces: Task) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_container/task.go -package=mocks_container github.com/containerd/containerd/v2/client Task +// // Package mocks_container is a generated GoMock package. package mocks_container @@ -12,14 +17,16 @@ import ( types "github.com/containerd/containerd/api/types" client "github.com/containerd/containerd/v2/client" cio "github.com/containerd/containerd/v2/pkg/cio" - gomock "github.com/golang/mock/gomock" + oci "github.com/containerd/containerd/v2/pkg/oci" specs "github.com/opencontainers/runtime-spec/specs-go" + gomock "go.uber.org/mock/gomock" ) // MockTask is a mock of Task interface. type MockTask struct { ctrl *gomock.Controller recorder *MockTaskMockRecorder + isgomock struct{} } // MockTaskMockRecorder is the mock recorder for MockTask. @@ -42,7 +49,7 @@ func (m *MockTask) EXPECT() *MockTaskMockRecorder { // Checkpoint mocks base method. func (m *MockTask) Checkpoint(arg0 context.Context, arg1 ...client.CheckpointTaskOpts) (client.Image, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -53,16 +60,16 @@ func (m *MockTask) Checkpoint(arg0 context.Context, arg1 ...client.CheckpointTas } // Checkpoint indicates an expected call of Checkpoint. -func (mr *MockTaskMockRecorder) Checkpoint(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Checkpoint(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Checkpoint", reflect.TypeOf((*MockTask)(nil).Checkpoint), varargs...) } // CloseIO mocks base method. func (m *MockTask) CloseIO(arg0 context.Context, arg1 ...client.IOCloserOpts) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -72,16 +79,16 @@ func (m *MockTask) CloseIO(arg0 context.Context, arg1 ...client.IOCloserOpts) er } // CloseIO indicates an expected call of CloseIO. -func (mr *MockTaskMockRecorder) CloseIO(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) CloseIO(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseIO", reflect.TypeOf((*MockTask)(nil).CloseIO), varargs...) } // Delete mocks base method. func (m *MockTask) Delete(arg0 context.Context, arg1 ...client.ProcessDeleteOpts) (*client.ExitStatus, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -92,9 +99,9 @@ func (m *MockTask) Delete(arg0 context.Context, arg1 ...client.ProcessDeleteOpts } // Delete indicates an expected call of Delete. -func (mr *MockTaskMockRecorder) Delete(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Delete(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockTask)(nil).Delete), varargs...) } @@ -108,7 +115,7 @@ func (m *MockTask) Exec(arg0 context.Context, arg1 string, arg2 *specs.Process, } // Exec indicates an expected call of Exec. -func (mr *MockTaskMockRecorder) Exec(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Exec(arg0, arg1, arg2, arg3 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Exec", reflect.TypeOf((*MockTask)(nil).Exec), arg0, arg1, arg2, arg3) } @@ -144,7 +151,7 @@ func (mr *MockTaskMockRecorder) IO() *gomock.Call { // Kill mocks base method. func (m *MockTask) Kill(arg0 context.Context, arg1 syscall.Signal, arg2 ...client.KillOpts) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} + varargs := []any{arg0, arg1} for _, a := range arg2 { varargs = append(varargs, a) } @@ -154,9 +161,9 @@ func (m *MockTask) Kill(arg0 context.Context, arg1 syscall.Signal, arg2 ...clien } // Kill indicates an expected call of Kill. -func (mr *MockTaskMockRecorder) Kill(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Kill(arg0, arg1 any, arg2 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{arg0, arg1}, arg2...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Kill", reflect.TypeOf((*MockTask)(nil).Kill), varargs...) } @@ -170,7 +177,7 @@ func (m *MockTask) LoadProcess(arg0 context.Context, arg1 string, arg2 cio.Attac } // LoadProcess indicates an expected call of LoadProcess. -func (mr *MockTaskMockRecorder) LoadProcess(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) LoadProcess(arg0, arg1, arg2 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoadProcess", reflect.TypeOf((*MockTask)(nil).LoadProcess), arg0, arg1, arg2) } @@ -185,7 +192,7 @@ func (m *MockTask) Metrics(arg0 context.Context) (*types.Metric, error) { } // Metrics indicates an expected call of Metrics. -func (mr *MockTaskMockRecorder) Metrics(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Metrics(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Metrics", reflect.TypeOf((*MockTask)(nil).Metrics), arg0) } @@ -199,7 +206,7 @@ func (m *MockTask) Pause(arg0 context.Context) error { } // Pause indicates an expected call of Pause. -func (mr *MockTaskMockRecorder) Pause(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Pause(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pause", reflect.TypeOf((*MockTask)(nil).Pause), arg0) } @@ -228,23 +235,23 @@ func (m *MockTask) Pids(arg0 context.Context) ([]client.ProcessInfo, error) { } // Pids indicates an expected call of Pids. -func (mr *MockTaskMockRecorder) Pids(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Pids(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pids", reflect.TypeOf((*MockTask)(nil).Pids), arg0) } // Resize mocks base method. -func (m *MockTask) Resize(arg0 context.Context, arg1, arg2 uint32) error { +func (m *MockTask) Resize(ctx context.Context, w, h uint32) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Resize", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Resize", ctx, w, h) ret0, _ := ret[0].(error) return ret0 } // Resize indicates an expected call of Resize. -func (mr *MockTaskMockRecorder) Resize(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Resize(ctx, w, h any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resize", reflect.TypeOf((*MockTask)(nil).Resize), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resize", reflect.TypeOf((*MockTask)(nil).Resize), ctx, w, h) } // Resume mocks base method. @@ -256,22 +263,22 @@ func (m *MockTask) Resume(arg0 context.Context) error { } // Resume indicates an expected call of Resume. -func (mr *MockTaskMockRecorder) Resume(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Resume(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resume", reflect.TypeOf((*MockTask)(nil).Resume), arg0) } // Spec mocks base method. -func (m *MockTask) Spec(arg0 context.Context) (*specs.Spec, error) { +func (m *MockTask) Spec(arg0 context.Context) (*oci.Spec, error) { m.ctrl.T.Helper() ret := m.ctrl.Call(m, "Spec", arg0) - ret0, _ := ret[0].(*specs.Spec) + ret0, _ := ret[0].(*oci.Spec) ret1, _ := ret[1].(error) return ret0, ret1 } // Spec indicates an expected call of Spec. -func (mr *MockTaskMockRecorder) Spec(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Spec(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Spec", reflect.TypeOf((*MockTask)(nil).Spec), arg0) } @@ -285,7 +292,7 @@ func (m *MockTask) Start(arg0 context.Context) error { } // Start indicates an expected call of Start. -func (mr *MockTaskMockRecorder) Start(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Start(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockTask)(nil).Start), arg0) } @@ -300,7 +307,7 @@ func (m *MockTask) Status(arg0 context.Context) (client.Status, error) { } // Status indicates an expected call of Status. -func (mr *MockTaskMockRecorder) Status(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Status(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Status", reflect.TypeOf((*MockTask)(nil).Status), arg0) } @@ -308,7 +315,7 @@ func (mr *MockTaskMockRecorder) Status(arg0 interface{}) *gomock.Call { // Update mocks base method. func (m *MockTask) Update(arg0 context.Context, arg1 ...client.UpdateTaskOpts) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0} + varargs := []any{arg0} for _, a := range arg1 { varargs = append(varargs, a) } @@ -318,9 +325,9 @@ func (m *MockTask) Update(arg0 context.Context, arg1 ...client.UpdateTaskOpts) e } // Update indicates an expected call of Update. -func (mr *MockTaskMockRecorder) Update(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Update(arg0 any, arg1 ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{arg0}, arg1...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockTask)(nil).Update), varargs...) } @@ -334,7 +341,7 @@ func (m *MockTask) Wait(arg0 context.Context) (<-chan client.ExitStatus, error) } // Wait indicates an expected call of Wait. -func (mr *MockTaskMockRecorder) Wait(arg0 interface{}) *gomock.Call { +func (mr *MockTaskMockRecorder) Wait(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Wait", reflect.TypeOf((*MockTask)(nil).Wait), arg0) } diff --git a/mocks/mocks_distribution/distributionsvc.go b/mocks/mocks_distribution/distributionsvc.go index 9858d329..812c5132 100644 --- a/mocks/mocks_distribution/distributionsvc.go +++ b/mocks/mocks_distribution/distributionsvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/distribution (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_distribution/distributionsvc.go -package=mocks_distribution github.com/runfinch/finch-daemon/api/handlers/distribution Service +// // Package mocks_distribution is a generated GoMock package. package mocks_distribution @@ -10,13 +15,14 @@ import ( types "github.com/docker/cli/cli/config/types" registry "github.com/docker/docker/api/types/registry" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -37,16 +43,16 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Inspect mocks base method. -func (m *MockService) Inspect(arg0 context.Context, arg1 string, arg2 *types.AuthConfig) (*registry.DistributionInspect, error) { +func (m *MockService) Inspect(ctx context.Context, name string, authCfg *types.AuthConfig) (*registry.DistributionInspect, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Inspect", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Inspect", ctx, name, authCfg) ret0, _ := ret[0].(*registry.DistributionInspect) ret1, _ := ret[1].(error) return ret0, ret1 } // Inspect indicates an expected call of Inspect. -func (mr *MockServiceMockRecorder) Inspect(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Inspect(ctx, name, authCfg any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), ctx, name, authCfg) } diff --git a/mocks/mocks_ecc/execcmd.go b/mocks/mocks_ecc/execcmd.go index f7a185db..c39cc017 100644 --- a/mocks/mocks_ecc/execcmd.go +++ b/mocks/mocks_ecc/execcmd.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/pkg/ecc (interfaces: ExecCmd) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_ecc/execcmd.go -package=mocks_ecc github.com/runfinch/finch-daemon/pkg/ecc ExecCmd +// // Package mocks_ecc is a generated GoMock package. package mocks_ecc @@ -8,13 +13,14 @@ import ( io "io" reflect "reflect" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockExecCmd is a mock of ExecCmd interface. type MockExecCmd struct { ctrl *gomock.Controller recorder *MockExecCmdMockRecorder + isgomock struct{} } // MockExecCmdMockRecorder is the mock recorder for MockExecCmd. @@ -63,49 +69,49 @@ func (mr *MockExecCmdMockRecorder) Run() *gomock.Call { } // SetDir mocks base method. -func (m *MockExecCmd) SetDir(arg0 string) { +func (m *MockExecCmd) SetDir(path string) { m.ctrl.T.Helper() - m.ctrl.Call(m, "SetDir", arg0) + m.ctrl.Call(m, "SetDir", path) } // SetDir indicates an expected call of SetDir. -func (mr *MockExecCmdMockRecorder) SetDir(arg0 interface{}) *gomock.Call { +func (mr *MockExecCmdMockRecorder) SetDir(path any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetDir", reflect.TypeOf((*MockExecCmd)(nil).SetDir), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetDir", reflect.TypeOf((*MockExecCmd)(nil).SetDir), path) } // SetStderr mocks base method. -func (m *MockExecCmd) SetStderr(arg0 io.Writer) { +func (m *MockExecCmd) SetStderr(writer io.Writer) { m.ctrl.T.Helper() - m.ctrl.Call(m, "SetStderr", arg0) + m.ctrl.Call(m, "SetStderr", writer) } // SetStderr indicates an expected call of SetStderr. -func (mr *MockExecCmdMockRecorder) SetStderr(arg0 interface{}) *gomock.Call { +func (mr *MockExecCmdMockRecorder) SetStderr(writer any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStderr", reflect.TypeOf((*MockExecCmd)(nil).SetStderr), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStderr", reflect.TypeOf((*MockExecCmd)(nil).SetStderr), writer) } // SetStdin mocks base method. -func (m *MockExecCmd) SetStdin(arg0 io.Reader) { +func (m *MockExecCmd) SetStdin(reader io.Reader) { m.ctrl.T.Helper() - m.ctrl.Call(m, "SetStdin", arg0) + m.ctrl.Call(m, "SetStdin", reader) } // SetStdin indicates an expected call of SetStdin. -func (mr *MockExecCmdMockRecorder) SetStdin(arg0 interface{}) *gomock.Call { +func (mr *MockExecCmdMockRecorder) SetStdin(reader any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStdin", reflect.TypeOf((*MockExecCmd)(nil).SetStdin), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStdin", reflect.TypeOf((*MockExecCmd)(nil).SetStdin), reader) } // SetStdout mocks base method. -func (m *MockExecCmd) SetStdout(arg0 io.Writer) { +func (m *MockExecCmd) SetStdout(writer io.Writer) { m.ctrl.T.Helper() - m.ctrl.Call(m, "SetStdout", arg0) + m.ctrl.Call(m, "SetStdout", writer) } // SetStdout indicates an expected call of SetStdout. -func (mr *MockExecCmdMockRecorder) SetStdout(arg0 interface{}) *gomock.Call { +func (mr *MockExecCmdMockRecorder) SetStdout(writer any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStdout", reflect.TypeOf((*MockExecCmd)(nil).SetStdout), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetStdout", reflect.TypeOf((*MockExecCmd)(nil).SetStdout), writer) } diff --git a/mocks/mocks_ecc/execcmdcreator.go b/mocks/mocks_ecc/execcmdcreator.go index ea590d12..9440cbb9 100644 --- a/mocks/mocks_ecc/execcmdcreator.go +++ b/mocks/mocks_ecc/execcmdcreator.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/pkg/ecc (interfaces: ExecCmdCreator) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_ecc/execcmdcreator.go -package=mocks_ecc github.com/runfinch/finch-daemon/pkg/ecc ExecCmdCreator +// // Package mocks_ecc is a generated GoMock package. package mocks_ecc @@ -7,14 +12,15 @@ package mocks_ecc import ( reflect "reflect" - gomock "github.com/golang/mock/gomock" ecc "github.com/runfinch/finch-daemon/pkg/ecc" + gomock "go.uber.org/mock/gomock" ) // MockExecCmdCreator is a mock of ExecCmdCreator interface. type MockExecCmdCreator struct { ctrl *gomock.Controller recorder *MockExecCmdCreatorMockRecorder + isgomock struct{} } // MockExecCmdCreatorMockRecorder is the mock recorder for MockExecCmdCreator. @@ -35,10 +41,10 @@ func (m *MockExecCmdCreator) EXPECT() *MockExecCmdCreatorMockRecorder { } // Command mocks base method. -func (m *MockExecCmdCreator) Command(arg0 string, arg1 ...string) ecc.ExecCmd { +func (m *MockExecCmdCreator) Command(name string, args ...string) ecc.ExecCmd { m.ctrl.T.Helper() - varargs := []interface{}{arg0} - for _, a := range arg1 { + varargs := []any{name} + for _, a := range args { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "Command", varargs...) @@ -47,8 +53,8 @@ func (m *MockExecCmdCreator) Command(arg0 string, arg1 ...string) ecc.ExecCmd { } // Command indicates an expected call of Command. -func (mr *MockExecCmdCreatorMockRecorder) Command(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockExecCmdCreatorMockRecorder) Command(name any, args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{name}, args...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Command", reflect.TypeOf((*MockExecCmdCreator)(nil).Command), varargs...) } diff --git a/mocks/mocks_exec/execsvc.go b/mocks/mocks_exec/execsvc.go index 8eb6453f..90646aab 100644 --- a/mocks/mocks_exec/execsvc.go +++ b/mocks/mocks_exec/execsvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/exec (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_exec/execsvc.go -package=mocks_exec github.com/runfinch/finch-daemon/api/handlers/exec Service +// // Package mocks_exec is a generated GoMock package. package mocks_exec @@ -8,14 +13,15 @@ import ( context "context" reflect "reflect" - gomock "github.com/golang/mock/gomock" types "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -36,44 +42,44 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Inspect mocks base method. -func (m *MockService) Inspect(arg0 context.Context, arg1, arg2 string) (*types.ExecInspect, error) { +func (m *MockService) Inspect(ctx context.Context, conId, execId string) (*types.ExecInspect, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Inspect", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Inspect", ctx, conId, execId) ret0, _ := ret[0].(*types.ExecInspect) ret1, _ := ret[1].(error) return ret0, ret1 } // Inspect indicates an expected call of Inspect. -func (mr *MockServiceMockRecorder) Inspect(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Inspect(ctx, conId, execId any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), ctx, conId, execId) } // Resize mocks base method. -func (m *MockService) Resize(arg0 context.Context, arg1 *types.ExecResizeOptions) error { +func (m *MockService) Resize(ctx context.Context, options *types.ExecResizeOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Resize", arg0, arg1) + ret := m.ctrl.Call(m, "Resize", ctx, options) ret0, _ := ret[0].(error) return ret0 } // Resize indicates an expected call of Resize. -func (mr *MockServiceMockRecorder) Resize(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Resize(ctx, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resize", reflect.TypeOf((*MockService)(nil).Resize), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resize", reflect.TypeOf((*MockService)(nil).Resize), ctx, options) } // Start mocks base method. -func (m *MockService) Start(arg0 context.Context, arg1 *types.ExecStartOptions) error { +func (m *MockService) Start(ctx context.Context, options *types.ExecStartOptions) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Start", arg0, arg1) + ret := m.ctrl.Call(m, "Start", ctx, options) ret0, _ := ret[0].(error) return ret0 } // Start indicates an expected call of Start. -func (mr *MockServiceMockRecorder) Start(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Start(ctx, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockService)(nil).Start), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockService)(nil).Start), ctx, options) } diff --git a/mocks/mocks_http/conn.go b/mocks/mocks_http/conn.go index 679c27fd..2158fdcb 100644 --- a/mocks/mocks_http/conn.go +++ b/mocks/mocks_http/conn.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: net (interfaces: Conn) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_http/conn.go -package=mocks_http net Conn +// // Package mocks_http is a generated GoMock package. package mocks_http @@ -9,13 +14,14 @@ import ( reflect "reflect" time "time" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockConn is a mock of Conn interface. type MockConn struct { ctrl *gomock.Controller recorder *MockConnMockRecorder + isgomock struct{} } // MockConnMockRecorder is the mock recorder for MockConn. @@ -64,18 +70,18 @@ func (mr *MockConnMockRecorder) LocalAddr() *gomock.Call { } // Read mocks base method. -func (m *MockConn) Read(arg0 []byte) (int, error) { +func (m *MockConn) Read(b []byte) (int, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Read", arg0) + ret := m.ctrl.Call(m, "Read", b) ret0, _ := ret[0].(int) ret1, _ := ret[1].(error) return ret0, ret1 } // Read indicates an expected call of Read. -func (mr *MockConnMockRecorder) Read(arg0 interface{}) *gomock.Call { +func (mr *MockConnMockRecorder) Read(b any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Read", reflect.TypeOf((*MockConn)(nil).Read), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Read", reflect.TypeOf((*MockConn)(nil).Read), b) } // RemoteAddr mocks base method. @@ -93,58 +99,58 @@ func (mr *MockConnMockRecorder) RemoteAddr() *gomock.Call { } // SetDeadline mocks base method. -func (m *MockConn) SetDeadline(arg0 time.Time) error { +func (m *MockConn) SetDeadline(t time.Time) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetDeadline", arg0) + ret := m.ctrl.Call(m, "SetDeadline", t) ret0, _ := ret[0].(error) return ret0 } // SetDeadline indicates an expected call of SetDeadline. -func (mr *MockConnMockRecorder) SetDeadline(arg0 interface{}) *gomock.Call { +func (mr *MockConnMockRecorder) SetDeadline(t any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetDeadline", reflect.TypeOf((*MockConn)(nil).SetDeadline), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetDeadline", reflect.TypeOf((*MockConn)(nil).SetDeadline), t) } // SetReadDeadline mocks base method. -func (m *MockConn) SetReadDeadline(arg0 time.Time) error { +func (m *MockConn) SetReadDeadline(t time.Time) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetReadDeadline", arg0) + ret := m.ctrl.Call(m, "SetReadDeadline", t) ret0, _ := ret[0].(error) return ret0 } // SetReadDeadline indicates an expected call of SetReadDeadline. -func (mr *MockConnMockRecorder) SetReadDeadline(arg0 interface{}) *gomock.Call { +func (mr *MockConnMockRecorder) SetReadDeadline(t any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetReadDeadline", reflect.TypeOf((*MockConn)(nil).SetReadDeadline), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetReadDeadline", reflect.TypeOf((*MockConn)(nil).SetReadDeadline), t) } // SetWriteDeadline mocks base method. -func (m *MockConn) SetWriteDeadline(arg0 time.Time) error { +func (m *MockConn) SetWriteDeadline(t time.Time) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SetWriteDeadline", arg0) + ret := m.ctrl.Call(m, "SetWriteDeadline", t) ret0, _ := ret[0].(error) return ret0 } // SetWriteDeadline indicates an expected call of SetWriteDeadline. -func (mr *MockConnMockRecorder) SetWriteDeadline(arg0 interface{}) *gomock.Call { +func (mr *MockConnMockRecorder) SetWriteDeadline(t any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetWriteDeadline", reflect.TypeOf((*MockConn)(nil).SetWriteDeadline), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetWriteDeadline", reflect.TypeOf((*MockConn)(nil).SetWriteDeadline), t) } // Write mocks base method. -func (m *MockConn) Write(arg0 []byte) (int, error) { +func (m *MockConn) Write(b []byte) (int, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Write", arg0) + ret := m.ctrl.Call(m, "Write", b) ret0, _ := ret[0].(int) ret1, _ := ret[1].(error) return ret0, ret1 } // Write indicates an expected call of Write. -func (mr *MockConnMockRecorder) Write(arg0 interface{}) *gomock.Call { +func (mr *MockConnMockRecorder) Write(b any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Write", reflect.TypeOf((*MockConn)(nil).Write), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Write", reflect.TypeOf((*MockConn)(nil).Write), b) } diff --git a/mocks/mocks_http/response_writer.go b/mocks/mocks_http/response_writer.go index d1f4e381..c34330b2 100644 --- a/mocks/mocks_http/response_writer.go +++ b/mocks/mocks_http/response_writer.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: net/http (interfaces: ResponseWriter) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_http/response_writer.go -package=mocks_http net/http ResponseWriter +// // Package mocks_http is a generated GoMock package. package mocks_http @@ -8,13 +13,14 @@ import ( http "net/http" reflect "reflect" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockResponseWriter is a mock of ResponseWriter interface. type MockResponseWriter struct { ctrl *gomock.Controller recorder *MockResponseWriterMockRecorder + isgomock struct{} } // MockResponseWriterMockRecorder is the mock recorder for MockResponseWriter. @@ -58,19 +64,19 @@ func (m *MockResponseWriter) Write(arg0 []byte) (int, error) { } // Write indicates an expected call of Write. -func (mr *MockResponseWriterMockRecorder) Write(arg0 interface{}) *gomock.Call { +func (mr *MockResponseWriterMockRecorder) Write(arg0 any) *gomock.Call { mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Write", reflect.TypeOf((*MockResponseWriter)(nil).Write), arg0) } // WriteHeader mocks base method. -func (m *MockResponseWriter) WriteHeader(arg0 int) { +func (m *MockResponseWriter) WriteHeader(statusCode int) { m.ctrl.T.Helper() - m.ctrl.Call(m, "WriteHeader", arg0) + m.ctrl.Call(m, "WriteHeader", statusCode) } // WriteHeader indicates an expected call of WriteHeader. -func (mr *MockResponseWriterMockRecorder) WriteHeader(arg0 interface{}) *gomock.Call { +func (mr *MockResponseWriterMockRecorder) WriteHeader(statusCode any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WriteHeader", reflect.TypeOf((*MockResponseWriter)(nil).WriteHeader), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WriteHeader", reflect.TypeOf((*MockResponseWriter)(nil).WriteHeader), statusCode) } diff --git a/mocks/mocks_image/imagesvc.go b/mocks/mocks_image/imagesvc.go index 3809c5f8..28e0962a 100644 --- a/mocks/mocks_image/imagesvc.go +++ b/mocks/mocks_image/imagesvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/image (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_image/imagesvc.go -package=mocks_image github.com/runfinch/finch-daemon/api/handlers/image Service +// // Package mocks_image is a generated GoMock package. package mocks_image @@ -11,14 +16,15 @@ import ( dockercompat "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" types "github.com/docker/cli/cli/config/types" - gomock "github.com/golang/mock/gomock" types0 "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -39,82 +45,82 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Inspect mocks base method. -func (m *MockService) Inspect(arg0 context.Context, arg1 string) (*dockercompat.Image, error) { +func (m *MockService) Inspect(ctx context.Context, name string) (*dockercompat.Image, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Inspect", arg0, arg1) + ret := m.ctrl.Call(m, "Inspect", ctx, name) ret0, _ := ret[0].(*dockercompat.Image) ret1, _ := ret[1].(error) return ret0, ret1 } // Inspect indicates an expected call of Inspect. -func (mr *MockServiceMockRecorder) Inspect(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Inspect(ctx, name any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), ctx, name) } // List mocks base method. -func (m *MockService) List(arg0 context.Context) ([]types0.ImageSummary, error) { +func (m *MockService) List(ctx context.Context) ([]types0.ImageSummary, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "List", arg0) + ret := m.ctrl.Call(m, "List", ctx) ret0, _ := ret[0].([]types0.ImageSummary) ret1, _ := ret[1].(error) return ret0, ret1 } // List indicates an expected call of List. -func (mr *MockServiceMockRecorder) List(arg0 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) List(ctx any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), ctx) } // Load mocks base method. -func (m *MockService) Load(arg0 context.Context, arg1 io.Reader, arg2 io.Writer, arg3 bool) error { +func (m *MockService) Load(ctx context.Context, inStream io.Reader, outStream io.Writer, quiet bool) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Load", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "Load", ctx, inStream, outStream, quiet) ret0, _ := ret[0].(error) return ret0 } // Load indicates an expected call of Load. -func (mr *MockServiceMockRecorder) Load(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Load(ctx, inStream, outStream, quiet any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Load", reflect.TypeOf((*MockService)(nil).Load), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Load", reflect.TypeOf((*MockService)(nil).Load), ctx, inStream, outStream, quiet) } // Pull mocks base method. -func (m *MockService) Pull(arg0 context.Context, arg1, arg2, arg3 string, arg4 *types.AuthConfig, arg5 io.Writer) error { +func (m *MockService) Pull(ctx context.Context, name, tag, platform string, authCfg *types.AuthConfig, outStream io.Writer) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Pull", arg0, arg1, arg2, arg3, arg4, arg5) + ret := m.ctrl.Call(m, "Pull", ctx, name, tag, platform, authCfg, outStream) ret0, _ := ret[0].(error) return ret0 } // Pull indicates an expected call of Pull. -func (mr *MockServiceMockRecorder) Pull(arg0, arg1, arg2, arg3, arg4, arg5 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Pull(ctx, name, tag, platform, authCfg, outStream any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pull", reflect.TypeOf((*MockService)(nil).Pull), arg0, arg1, arg2, arg3, arg4, arg5) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pull", reflect.TypeOf((*MockService)(nil).Pull), ctx, name, tag, platform, authCfg, outStream) } // Push mocks base method. -func (m *MockService) Push(arg0 context.Context, arg1, arg2 string, arg3 *types.AuthConfig, arg4 io.Writer) (*types0.PushResult, error) { +func (m *MockService) Push(ctx context.Context, name, tag string, authCfg *types.AuthConfig, outStream io.Writer) (*types0.PushResult, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Push", arg0, arg1, arg2, arg3, arg4) + ret := m.ctrl.Call(m, "Push", ctx, name, tag, authCfg, outStream) ret0, _ := ret[0].(*types0.PushResult) ret1, _ := ret[1].(error) return ret0, ret1 } // Push indicates an expected call of Push. -func (mr *MockServiceMockRecorder) Push(arg0, arg1, arg2, arg3, arg4 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Push(ctx, name, tag, authCfg, outStream any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Push", reflect.TypeOf((*MockService)(nil).Push), arg0, arg1, arg2, arg3, arg4) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Push", reflect.TypeOf((*MockService)(nil).Push), ctx, name, tag, authCfg, outStream) } // Remove mocks base method. -func (m *MockService) Remove(arg0 context.Context, arg1 string, arg2 bool) ([]string, []string, error) { +func (m *MockService) Remove(ctx context.Context, name string, force bool) ([]string, []string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Remove", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Remove", ctx, name, force) ret0, _ := ret[0].([]string) ret1, _ := ret[1].([]string) ret2, _ := ret[2].(error) @@ -122,21 +128,21 @@ func (m *MockService) Remove(arg0 context.Context, arg1 string, arg2 bool) ([]st } // Remove indicates an expected call of Remove. -func (mr *MockServiceMockRecorder) Remove(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Remove(ctx, name, force any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), ctx, name, force) } // Tag mocks base method. -func (m *MockService) Tag(arg0 context.Context, arg1, arg2, arg3 string) error { +func (m *MockService) Tag(ctx context.Context, srcImg, repo, tag string) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Tag", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "Tag", ctx, srcImg, repo, tag) ret0, _ := ret[0].(error) return ret0 } // Tag indicates an expected call of Tag. -func (mr *MockServiceMockRecorder) Tag(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Tag(ctx, srcImg, repo, tag any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Tag", reflect.TypeOf((*MockService)(nil).Tag), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Tag", reflect.TypeOf((*MockService)(nil).Tag), ctx, srcImg, repo, tag) } diff --git a/mocks/mocks_image/store.go b/mocks/mocks_image/store.go index c6a3ba38..57a25145 100644 --- a/mocks/mocks_image/store.go +++ b/mocks/mocks_image/store.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/containerd/containerd/v2/core/images (interfaces: Store) +// +// Generated by this command: +// +// mockgen --destination=./mocks/mocks_image/store.go -package=mocks_image github.com/containerd/containerd/v2/core/images Store +// // Package mocks_image is a generated GoMock package. package mocks_image @@ -9,13 +14,14 @@ import ( reflect "reflect" images "github.com/containerd/containerd/v2/core/images" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockStore is a mock of Store interface. type MockStore struct { ctrl *gomock.Controller recorder *MockStoreMockRecorder + isgomock struct{} } // MockStoreMockRecorder is the mock recorder for MockStore. @@ -36,25 +42,25 @@ func (m *MockStore) EXPECT() *MockStoreMockRecorder { } // Create mocks base method. -func (m *MockStore) Create(arg0 context.Context, arg1 images.Image) (images.Image, error) { +func (m *MockStore) Create(ctx context.Context, image images.Image) (images.Image, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Create", arg0, arg1) + ret := m.ctrl.Call(m, "Create", ctx, image) ret0, _ := ret[0].(images.Image) ret1, _ := ret[1].(error) return ret0, ret1 } // Create indicates an expected call of Create. -func (mr *MockStoreMockRecorder) Create(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockStoreMockRecorder) Create(ctx, image any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockStore)(nil).Create), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockStore)(nil).Create), ctx, image) } // Delete mocks base method. -func (m *MockStore) Delete(arg0 context.Context, arg1 string, arg2 ...images.DeleteOpt) error { +func (m *MockStore) Delete(ctx context.Context, name string, opts ...images.DeleteOpt) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} - for _, a := range arg2 { + varargs := []any{ctx, name} + for _, a := range opts { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "Delete", varargs...) @@ -63,32 +69,32 @@ func (m *MockStore) Delete(arg0 context.Context, arg1 string, arg2 ...images.Del } // Delete indicates an expected call of Delete. -func (mr *MockStoreMockRecorder) Delete(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockStoreMockRecorder) Delete(ctx, name any, opts ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{ctx, name}, opts...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockStore)(nil).Delete), varargs...) } // Get mocks base method. -func (m *MockStore) Get(arg0 context.Context, arg1 string) (images.Image, error) { +func (m *MockStore) Get(ctx context.Context, name string) (images.Image, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Get", arg0, arg1) + ret := m.ctrl.Call(m, "Get", ctx, name) ret0, _ := ret[0].(images.Image) ret1, _ := ret[1].(error) return ret0, ret1 } // Get indicates an expected call of Get. -func (mr *MockStoreMockRecorder) Get(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockStoreMockRecorder) Get(ctx, name any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockStore)(nil).Get), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockStore)(nil).Get), ctx, name) } // List mocks base method. -func (m *MockStore) List(arg0 context.Context, arg1 ...string) ([]images.Image, error) { +func (m *MockStore) List(ctx context.Context, filters ...string) ([]images.Image, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} - for _, a := range arg1 { + varargs := []any{ctx} + for _, a := range filters { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "List", varargs...) @@ -98,17 +104,17 @@ func (m *MockStore) List(arg0 context.Context, arg1 ...string) ([]images.Image, } // List indicates an expected call of List. -func (mr *MockStoreMockRecorder) List(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *MockStoreMockRecorder) List(ctx any, filters ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{ctx}, filters...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockStore)(nil).List), varargs...) } // Update mocks base method. -func (m *MockStore) Update(arg0 context.Context, arg1 images.Image, arg2 ...string) (images.Image, error) { +func (m *MockStore) Update(ctx context.Context, image images.Image, fieldpaths ...string) (images.Image, error) { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} - for _, a := range arg2 { + varargs := []any{ctx, image} + for _, a := range fieldpaths { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "Update", varargs...) @@ -118,8 +124,8 @@ func (m *MockStore) Update(arg0 context.Context, arg1 images.Image, arg2 ...stri } // Update indicates an expected call of Update. -func (mr *MockStoreMockRecorder) Update(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockStoreMockRecorder) Update(ctx, image any, fieldpaths ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{ctx, image}, fieldpaths...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockStore)(nil).Update), varargs...) } diff --git a/mocks/mocks_logger/logger.go b/mocks/mocks_logger/logger.go index 5fd986a4..5b515948 100644 --- a/mocks/mocks_logger/logger.go +++ b/mocks/mocks_logger/logger.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/pkg/flog (interfaces: Logger) +// +// Generated by this command: +// +// mockgen -destination=../../mocks/mocks_logger/logger.go -package=mocks_logger -mock_names Logger=Logger . Logger +// // Package mocks_logger is a generated GoMock package. package mocks_logger @@ -7,14 +12,15 @@ package mocks_logger import ( reflect "reflect" - gomock "github.com/golang/mock/gomock" flog "github.com/runfinch/finch-daemon/pkg/flog" + gomock "go.uber.org/mock/gomock" ) // Logger is a mock of Logger interface. type Logger struct { ctrl *gomock.Controller recorder *LoggerMockRecorder + isgomock struct{} } // LoggerMockRecorder is the mock recorder for Logger. @@ -35,193 +41,193 @@ func (m *Logger) EXPECT() *LoggerMockRecorder { } // Debugf mocks base method. -func (m *Logger) Debugf(arg0 string, arg1 ...interface{}) { +func (m *Logger) Debugf(format string, args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} - for _, a := range arg1 { + varargs := []any{format} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Debugf", varargs...) } // Debugf indicates an expected call of Debugf. -func (mr *LoggerMockRecorder) Debugf(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Debugf(format any, args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{format}, args...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Debugf", reflect.TypeOf((*Logger)(nil).Debugf), varargs...) } // Debugln mocks base method. -func (m *Logger) Debugln(arg0 ...interface{}) { +func (m *Logger) Debugln(args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{} - for _, a := range arg0 { + varargs := []any{} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Debugln", varargs...) } // Debugln indicates an expected call of Debugln. -func (mr *LoggerMockRecorder) Debugln(arg0 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Debugln(args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Debugln", reflect.TypeOf((*Logger)(nil).Debugln), arg0...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Debugln", reflect.TypeOf((*Logger)(nil).Debugln), args...) } // Error mocks base method. -func (m *Logger) Error(arg0 ...interface{}) { +func (m *Logger) Error(args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{} - for _, a := range arg0 { + varargs := []any{} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Error", varargs...) } // Error indicates an expected call of Error. -func (mr *LoggerMockRecorder) Error(arg0 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Error(args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Error", reflect.TypeOf((*Logger)(nil).Error), arg0...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Error", reflect.TypeOf((*Logger)(nil).Error), args...) } // Errorf mocks base method. -func (m *Logger) Errorf(arg0 string, arg1 ...interface{}) { +func (m *Logger) Errorf(format string, args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} - for _, a := range arg1 { + varargs := []any{format} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Errorf", varargs...) } // Errorf indicates an expected call of Errorf. -func (mr *LoggerMockRecorder) Errorf(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Errorf(format any, args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{format}, args...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Errorf", reflect.TypeOf((*Logger)(nil).Errorf), varargs...) } // Fatal mocks base method. -func (m *Logger) Fatal(arg0 ...interface{}) { +func (m *Logger) Fatal(args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{} - for _, a := range arg0 { + varargs := []any{} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Fatal", varargs...) } // Fatal indicates an expected call of Fatal. -func (mr *LoggerMockRecorder) Fatal(arg0 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Fatal(args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Fatal", reflect.TypeOf((*Logger)(nil).Fatal), arg0...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Fatal", reflect.TypeOf((*Logger)(nil).Fatal), args...) } // Info mocks base method. -func (m *Logger) Info(arg0 ...interface{}) { +func (m *Logger) Info(args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{} - for _, a := range arg0 { + varargs := []any{} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Info", varargs...) } // Info indicates an expected call of Info. -func (mr *LoggerMockRecorder) Info(arg0 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Info(args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Info", reflect.TypeOf((*Logger)(nil).Info), arg0...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Info", reflect.TypeOf((*Logger)(nil).Info), args...) } // Infof mocks base method. -func (m *Logger) Infof(arg0 string, arg1 ...interface{}) { +func (m *Logger) Infof(format string, args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} - for _, a := range arg1 { + varargs := []any{format} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Infof", varargs...) } // Infof indicates an expected call of Infof. -func (mr *LoggerMockRecorder) Infof(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Infof(format any, args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{format}, args...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Infof", reflect.TypeOf((*Logger)(nil).Infof), varargs...) } // Infoln mocks base method. -func (m *Logger) Infoln(arg0 ...interface{}) { +func (m *Logger) Infoln(args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{} - for _, a := range arg0 { + varargs := []any{} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Infoln", varargs...) } // Infoln indicates an expected call of Infoln. -func (mr *LoggerMockRecorder) Infoln(arg0 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Infoln(args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Infoln", reflect.TypeOf((*Logger)(nil).Infoln), arg0...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Infoln", reflect.TypeOf((*Logger)(nil).Infoln), args...) } // SetLevel mocks base method. -func (m *Logger) SetLevel(arg0 flog.Level) { +func (m *Logger) SetLevel(level flog.Level) { m.ctrl.T.Helper() - m.ctrl.Call(m, "SetLevel", arg0) + m.ctrl.Call(m, "SetLevel", level) } // SetLevel indicates an expected call of SetLevel. -func (mr *LoggerMockRecorder) SetLevel(arg0 interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) SetLevel(level any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetLevel", reflect.TypeOf((*Logger)(nil).SetLevel), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetLevel", reflect.TypeOf((*Logger)(nil).SetLevel), level) } // Warn mocks base method. -func (m *Logger) Warn(arg0 ...interface{}) { +func (m *Logger) Warn(args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{} - for _, a := range arg0 { + varargs := []any{} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Warn", varargs...) } // Warn indicates an expected call of Warn. -func (mr *LoggerMockRecorder) Warn(arg0 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Warn(args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Warn", reflect.TypeOf((*Logger)(nil).Warn), arg0...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Warn", reflect.TypeOf((*Logger)(nil).Warn), args...) } // Warnf mocks base method. -func (m *Logger) Warnf(arg0 string, arg1 ...interface{}) { +func (m *Logger) Warnf(format string, args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{arg0} - for _, a := range arg1 { + varargs := []any{format} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Warnf", varargs...) } // Warnf indicates an expected call of Warnf. -func (mr *LoggerMockRecorder) Warnf(arg0 interface{}, arg1 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Warnf(format any, args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0}, arg1...) + varargs := append([]any{format}, args...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Warnf", reflect.TypeOf((*Logger)(nil).Warnf), varargs...) } // Warnln mocks base method. -func (m *Logger) Warnln(arg0 ...interface{}) { +func (m *Logger) Warnln(args ...any) { m.ctrl.T.Helper() - varargs := []interface{}{} - for _, a := range arg0 { + varargs := []any{} + for _, a := range args { varargs = append(varargs, a) } m.ctrl.Call(m, "Warnln", varargs...) } // Warnln indicates an expected call of Warnln. -func (mr *LoggerMockRecorder) Warnln(arg0 ...interface{}) *gomock.Call { +func (mr *LoggerMockRecorder) Warnln(args ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Warnln", reflect.TypeOf((*Logger)(nil).Warnln), arg0...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Warnln", reflect.TypeOf((*Logger)(nil).Warnln), args...) } diff --git a/mocks/mocks_network/driver.go b/mocks/mocks_network/driver.go index 47148a13..a86edcf4 100644 --- a/mocks/mocks_network/driver.go +++ b/mocks/mocks_network/driver.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/service/network/driver (interfaces: DriverHandler) +// +// Generated by this command: +// +// mockgen --destination=../../../../mocks/mocks_network/driver.go -package=mocks_network -mock_names DriverHandler=DriverHandler . DriverHandler +// // Package mocks_network is a generated GoMock package. package mocks_network @@ -9,14 +14,15 @@ import ( types "github.com/containerd/nerdctl/v2/pkg/api/types" netutil "github.com/containerd/nerdctl/v2/pkg/netutil" - gomock "github.com/golang/mock/gomock" types0 "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // DriverHandler is a mock of DriverHandler interface. type DriverHandler struct { ctrl *gomock.Controller recorder *DriverHandlerMockRecorder + isgomock struct{} } // DriverHandlerMockRecorder is the mock recorder for DriverHandler. @@ -37,45 +43,45 @@ func (m *DriverHandler) EXPECT() *DriverHandlerMockRecorder { } // HandleCreateOptions mocks base method. -func (m *DriverHandler) HandleCreateOptions(arg0 types0.NetworkCreateRequest, arg1 types.NetworkCreateOptions) (types.NetworkCreateOptions, error) { +func (m *DriverHandler) HandleCreateOptions(request types0.NetworkCreateRequest, options types.NetworkCreateOptions) (types.NetworkCreateOptions, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "HandleCreateOptions", arg0, arg1) + ret := m.ctrl.Call(m, "HandleCreateOptions", request, options) ret0, _ := ret[0].(types.NetworkCreateOptions) ret1, _ := ret[1].(error) return ret0, ret1 } // HandleCreateOptions indicates an expected call of HandleCreateOptions. -func (mr *DriverHandlerMockRecorder) HandleCreateOptions(arg0, arg1 interface{}) *gomock.Call { +func (mr *DriverHandlerMockRecorder) HandleCreateOptions(request, options any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "HandleCreateOptions", reflect.TypeOf((*DriverHandler)(nil).HandleCreateOptions), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "HandleCreateOptions", reflect.TypeOf((*DriverHandler)(nil).HandleCreateOptions), request, options) } // HandlePostCreate mocks base method. -func (m *DriverHandler) HandlePostCreate(arg0 *netutil.NetworkConfig) (string, error) { +func (m *DriverHandler) HandlePostCreate(net *netutil.NetworkConfig) (string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "HandlePostCreate", arg0) + ret := m.ctrl.Call(m, "HandlePostCreate", net) ret0, _ := ret[0].(string) ret1, _ := ret[1].(error) return ret0, ret1 } // HandlePostCreate indicates an expected call of HandlePostCreate. -func (mr *DriverHandlerMockRecorder) HandlePostCreate(arg0 interface{}) *gomock.Call { +func (mr *DriverHandlerMockRecorder) HandlePostCreate(net any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "HandlePostCreate", reflect.TypeOf((*DriverHandler)(nil).HandlePostCreate), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "HandlePostCreate", reflect.TypeOf((*DriverHandler)(nil).HandlePostCreate), net) } // HandleRemove mocks base method. -func (m *DriverHandler) HandleRemove(arg0 *netutil.NetworkConfig) error { +func (m *DriverHandler) HandleRemove(net *netutil.NetworkConfig) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "HandleRemove", arg0) + ret := m.ctrl.Call(m, "HandleRemove", net) ret0, _ := ret[0].(error) return ret0 } // HandleRemove indicates an expected call of HandleRemove. -func (mr *DriverHandlerMockRecorder) HandleRemove(arg0 interface{}) *gomock.Call { +func (mr *DriverHandlerMockRecorder) HandleRemove(net any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "HandleRemove", reflect.TypeOf((*DriverHandler)(nil).HandleRemove), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "HandleRemove", reflect.TypeOf((*DriverHandler)(nil).HandleRemove), net) } diff --git a/mocks/mocks_network/iptables.go b/mocks/mocks_network/iptables.go index 94dc213b..205af104 100644 --- a/mocks/mocks_network/iptables.go +++ b/mocks/mocks_network/iptables.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/internal/service/network/driver (interfaces: IPTablesWrapper) +// +// Generated by this command: +// +// mockgen --destination=../../../../mocks/mocks_network/iptables.go -package=mocks_network . IPTablesWrapper +// // Package mocks_network is a generated GoMock package. package mocks_network @@ -7,13 +12,14 @@ package mocks_network import ( reflect "reflect" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockIPTablesWrapper is a mock of IPTablesWrapper interface. type MockIPTablesWrapper struct { ctrl *gomock.Controller recorder *MockIPTablesWrapperMockRecorder + isgomock struct{} } // MockIPTablesWrapperMockRecorder is the mock recorder for MockIPTablesWrapper. @@ -34,10 +40,10 @@ func (m *MockIPTablesWrapper) EXPECT() *MockIPTablesWrapperMockRecorder { } // AppendUnique mocks base method. -func (m *MockIPTablesWrapper) AppendUnique(arg0, arg1 string, arg2 ...string) error { +func (m *MockIPTablesWrapper) AppendUnique(table, chain string, rulespec ...string) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} - for _, a := range arg2 { + varargs := []any{table, chain} + for _, a := range rulespec { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "AppendUnique", varargs...) @@ -46,46 +52,46 @@ func (m *MockIPTablesWrapper) AppendUnique(arg0, arg1 string, arg2 ...string) er } // AppendUnique indicates an expected call of AppendUnique. -func (mr *MockIPTablesWrapperMockRecorder) AppendUnique(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockIPTablesWrapperMockRecorder) AppendUnique(table, chain any, rulespec ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{table, chain}, rulespec...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AppendUnique", reflect.TypeOf((*MockIPTablesWrapper)(nil).AppendUnique), varargs...) } // ChainExists mocks base method. -func (m *MockIPTablesWrapper) ChainExists(arg0, arg1 string) (bool, error) { +func (m *MockIPTablesWrapper) ChainExists(table, chain string) (bool, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "ChainExists", arg0, arg1) + ret := m.ctrl.Call(m, "ChainExists", table, chain) ret0, _ := ret[0].(bool) ret1, _ := ret[1].(error) return ret0, ret1 } // ChainExists indicates an expected call of ChainExists. -func (mr *MockIPTablesWrapperMockRecorder) ChainExists(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockIPTablesWrapperMockRecorder) ChainExists(table, chain any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ChainExists", reflect.TypeOf((*MockIPTablesWrapper)(nil).ChainExists), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ChainExists", reflect.TypeOf((*MockIPTablesWrapper)(nil).ChainExists), table, chain) } // DeleteChain mocks base method. -func (m *MockIPTablesWrapper) DeleteChain(arg0, arg1 string) error { +func (m *MockIPTablesWrapper) DeleteChain(table, chain string) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "DeleteChain", arg0, arg1) + ret := m.ctrl.Call(m, "DeleteChain", table, chain) ret0, _ := ret[0].(error) return ret0 } // DeleteChain indicates an expected call of DeleteChain. -func (mr *MockIPTablesWrapperMockRecorder) DeleteChain(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockIPTablesWrapperMockRecorder) DeleteChain(table, chain any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteChain", reflect.TypeOf((*MockIPTablesWrapper)(nil).DeleteChain), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteChain", reflect.TypeOf((*MockIPTablesWrapper)(nil).DeleteChain), table, chain) } // DeleteIfExists mocks base method. -func (m *MockIPTablesWrapper) DeleteIfExists(arg0, arg1 string, arg2 ...string) error { +func (m *MockIPTablesWrapper) DeleteIfExists(table, chain string, rulespec ...string) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1} - for _, a := range arg2 { + varargs := []any{table, chain} + for _, a := range rulespec { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "DeleteIfExists", varargs...) @@ -94,17 +100,17 @@ func (m *MockIPTablesWrapper) DeleteIfExists(arg0, arg1 string, arg2 ...string) } // DeleteIfExists indicates an expected call of DeleteIfExists. -func (mr *MockIPTablesWrapperMockRecorder) DeleteIfExists(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call { +func (mr *MockIPTablesWrapperMockRecorder) DeleteIfExists(table, chain any, rulespec ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1}, arg2...) + varargs := append([]any{table, chain}, rulespec...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteIfExists", reflect.TypeOf((*MockIPTablesWrapper)(nil).DeleteIfExists), varargs...) } // InsertUnique mocks base method. -func (m *MockIPTablesWrapper) InsertUnique(arg0, arg1 string, arg2 int, arg3 ...string) error { +func (m *MockIPTablesWrapper) InsertUnique(table, chain string, pos int, rulespec ...string) error { m.ctrl.T.Helper() - varargs := []interface{}{arg0, arg1, arg2} - for _, a := range arg3 { + varargs := []any{table, chain, pos} + for _, a := range rulespec { varargs = append(varargs, a) } ret := m.ctrl.Call(m, "InsertUnique", varargs...) @@ -113,22 +119,22 @@ func (m *MockIPTablesWrapper) InsertUnique(arg0, arg1 string, arg2 int, arg3 ... } // InsertUnique indicates an expected call of InsertUnique. -func (mr *MockIPTablesWrapperMockRecorder) InsertUnique(arg0, arg1, arg2 interface{}, arg3 ...interface{}) *gomock.Call { +func (mr *MockIPTablesWrapperMockRecorder) InsertUnique(table, chain, pos any, rulespec ...any) *gomock.Call { mr.mock.ctrl.T.Helper() - varargs := append([]interface{}{arg0, arg1, arg2}, arg3...) + varargs := append([]any{table, chain, pos}, rulespec...) return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InsertUnique", reflect.TypeOf((*MockIPTablesWrapper)(nil).InsertUnique), varargs...) } // NewChain mocks base method. -func (m *MockIPTablesWrapper) NewChain(arg0, arg1 string) error { +func (m *MockIPTablesWrapper) NewChain(table, chain string) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "NewChain", arg0, arg1) + ret := m.ctrl.Call(m, "NewChain", table, chain) ret0, _ := ret[0].(error) return ret0 } // NewChain indicates an expected call of NewChain. -func (mr *MockIPTablesWrapperMockRecorder) NewChain(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockIPTablesWrapperMockRecorder) NewChain(table, chain any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewChain", reflect.TypeOf((*MockIPTablesWrapper)(nil).NewChain), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewChain", reflect.TypeOf((*MockIPTablesWrapper)(nil).NewChain), table, chain) } diff --git a/mocks/mocks_network/networksvc.go b/mocks/mocks_network/networksvc.go index e266010e..7f890f4f 100644 --- a/mocks/mocks_network/networksvc.go +++ b/mocks/mocks_network/networksvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/network (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_network/networksvc.go -package=mocks_network github.com/runfinch/finch-daemon/api/handlers/network Service +// // Package mocks_network is a generated GoMock package. package mocks_network @@ -8,14 +13,15 @@ import ( context "context" reflect "reflect" - gomock "github.com/golang/mock/gomock" types "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -36,74 +42,74 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Connect mocks base method. -func (m *MockService) Connect(arg0 context.Context, arg1, arg2 string) error { +func (m *MockService) Connect(ctx context.Context, networkId, containerId string) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Connect", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Connect", ctx, networkId, containerId) ret0, _ := ret[0].(error) return ret0 } // Connect indicates an expected call of Connect. -func (mr *MockServiceMockRecorder) Connect(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Connect(ctx, networkId, containerId any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Connect", reflect.TypeOf((*MockService)(nil).Connect), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Connect", reflect.TypeOf((*MockService)(nil).Connect), ctx, networkId, containerId) } // Create mocks base method. -func (m *MockService) Create(arg0 context.Context, arg1 types.NetworkCreateRequest) (types.NetworkCreateResponse, error) { +func (m *MockService) Create(ctx context.Context, request types.NetworkCreateRequest) (types.NetworkCreateResponse, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Create", arg0, arg1) + ret := m.ctrl.Call(m, "Create", ctx, request) ret0, _ := ret[0].(types.NetworkCreateResponse) ret1, _ := ret[1].(error) return ret0, ret1 } // Create indicates an expected call of Create. -func (mr *MockServiceMockRecorder) Create(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Create(ctx, request any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockService)(nil).Create), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockService)(nil).Create), ctx, request) } // Inspect mocks base method. -func (m *MockService) Inspect(arg0 context.Context, arg1 string) (*types.NetworkInspectResponse, error) { +func (m *MockService) Inspect(ctx context.Context, networkId string) (*types.NetworkInspectResponse, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Inspect", arg0, arg1) + ret := m.ctrl.Call(m, "Inspect", ctx, networkId) ret0, _ := ret[0].(*types.NetworkInspectResponse) ret1, _ := ret[1].(error) return ret0, ret1 } // Inspect indicates an expected call of Inspect. -func (mr *MockServiceMockRecorder) Inspect(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Inspect(ctx, networkId any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), ctx, networkId) } // List mocks base method. -func (m *MockService) List(arg0 context.Context) ([]*types.NetworkInspectResponse, error) { +func (m *MockService) List(ctx context.Context) ([]*types.NetworkInspectResponse, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "List", arg0) + ret := m.ctrl.Call(m, "List", ctx) ret0, _ := ret[0].([]*types.NetworkInspectResponse) ret1, _ := ret[1].(error) return ret0, ret1 } // List indicates an expected call of List. -func (mr *MockServiceMockRecorder) List(arg0 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) List(ctx any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), ctx) } // Remove mocks base method. -func (m *MockService) Remove(arg0 context.Context, arg1 string) error { +func (m *MockService) Remove(ctx context.Context, networkId string) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Remove", arg0, arg1) + ret := m.ctrl.Call(m, "Remove", ctx, networkId) ret0, _ := ret[0].(error) return ret0 } // Remove indicates an expected call of Remove. -func (mr *MockServiceMockRecorder) Remove(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Remove(ctx, networkId any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), ctx, networkId) } diff --git a/mocks/mocks_remotes/fetcher.go b/mocks/mocks_remotes/fetcher.go index 1ce7bbe7..88f642f0 100644 --- a/mocks/mocks_remotes/fetcher.go +++ b/mocks/mocks_remotes/fetcher.go @@ -9,7 +9,7 @@ import ( io "io" reflect "reflect" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" v1 "github.com/opencontainers/image-spec/specs-go/v1" ) diff --git a/mocks/mocks_remotes/resolver.go b/mocks/mocks_remotes/resolver.go index 03defdbd..5363c668 100644 --- a/mocks/mocks_remotes/resolver.go +++ b/mocks/mocks_remotes/resolver.go @@ -9,7 +9,7 @@ import ( reflect "reflect" remotes "github.com/containerd/containerd/v2/core/remotes" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" v1 "github.com/opencontainers/image-spec/specs-go/v1" ) diff --git a/mocks/mocks_statsutil/statsutil.go b/mocks/mocks_statsutil/statsutil.go index dbb941f8..3dbeddc9 100644 --- a/mocks/mocks_statsutil/statsutil.go +++ b/mocks/mocks_statsutil/statsutil.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/pkg/statsutil (interfaces: StatsUtil) +// +// Generated by this command: +// +// mockgen --destination=../../mocks/mocks_statsutil/statsutil.go -package=mocks_statsutil github.com/runfinch/finch-daemon/pkg/statsutil StatsUtil +// // Package mocks_statsutil is a generated GoMock package. package mocks_statsutil @@ -9,13 +14,14 @@ import ( native "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" container "github.com/docker/docker/api/types/container" - gomock "github.com/golang/mock/gomock" + gomock "go.uber.org/mock/gomock" ) // MockStatsUtil is a mock of StatsUtil interface. type MockStatsUtil struct { ctrl *gomock.Controller recorder *MockStatsUtilMockRecorder + isgomock struct{} } // MockStatsUtilMockRecorder is the mock recorder for MockStatsUtil. @@ -36,18 +42,18 @@ func (m *MockStatsUtil) EXPECT() *MockStatsUtilMockRecorder { } // CollectNetworkStats mocks base method. -func (m *MockStatsUtil) CollectNetworkStats(arg0 int, arg1 []native.NetInterface) (map[string]container.NetworkStats, error) { +func (m *MockStatsUtil) CollectNetworkStats(pid int, interfaces []native.NetInterface) (map[string]container.NetworkStats, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "CollectNetworkStats", arg0, arg1) + ret := m.ctrl.Call(m, "CollectNetworkStats", pid, interfaces) ret0, _ := ret[0].(map[string]container.NetworkStats) ret1, _ := ret[1].(error) return ret0, ret1 } // CollectNetworkStats indicates an expected call of CollectNetworkStats. -func (mr *MockStatsUtilMockRecorder) CollectNetworkStats(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockStatsUtilMockRecorder) CollectNetworkStats(pid, interfaces any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CollectNetworkStats", reflect.TypeOf((*MockStatsUtil)(nil).CollectNetworkStats), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CollectNetworkStats", reflect.TypeOf((*MockStatsUtil)(nil).CollectNetworkStats), pid, interfaces) } // GetNumberOnlineCPUs mocks base method. diff --git a/mocks/mocks_system/systemsvc.go b/mocks/mocks_system/systemsvc.go index 1b64ad2a..67400aef 100644 --- a/mocks/mocks_system/systemsvc.go +++ b/mocks/mocks_system/systemsvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/system (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_system/systemsvc.go -package=mocks_system github.com/runfinch/finch-daemon/api/handlers/system Service +// // Package mocks_system is a generated GoMock package. package mocks_system @@ -10,15 +15,16 @@ import ( config "github.com/containerd/nerdctl/v2/pkg/config" dockercompat "github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat" - gomock "github.com/golang/mock/gomock" events "github.com/runfinch/finch-daemon/api/events" types "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -39,61 +45,61 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Auth mocks base method. -func (m *MockService) Auth(arg0 context.Context, arg1, arg2, arg3 string) (string, error) { +func (m *MockService) Auth(ctx context.Context, username, password, serverAddr string) (string, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Auth", arg0, arg1, arg2, arg3) + ret := m.ctrl.Call(m, "Auth", ctx, username, password, serverAddr) ret0, _ := ret[0].(string) ret1, _ := ret[1].(error) return ret0, ret1 } // Auth indicates an expected call of Auth. -func (mr *MockServiceMockRecorder) Auth(arg0, arg1, arg2, arg3 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Auth(ctx, username, password, serverAddr any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Auth", reflect.TypeOf((*MockService)(nil).Auth), arg0, arg1, arg2, arg3) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Auth", reflect.TypeOf((*MockService)(nil).Auth), ctx, username, password, serverAddr) } // GetInfo mocks base method. -func (m *MockService) GetInfo(arg0 context.Context, arg1 *config.Config) (*dockercompat.Info, error) { +func (m *MockService) GetInfo(ctx context.Context, arg1 *config.Config) (*dockercompat.Info, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetInfo", arg0, arg1) + ret := m.ctrl.Call(m, "GetInfo", ctx, arg1) ret0, _ := ret[0].(*dockercompat.Info) ret1, _ := ret[1].(error) return ret0, ret1 } // GetInfo indicates an expected call of GetInfo. -func (mr *MockServiceMockRecorder) GetInfo(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) GetInfo(ctx, arg1 any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetInfo", reflect.TypeOf((*MockService)(nil).GetInfo), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetInfo", reflect.TypeOf((*MockService)(nil).GetInfo), ctx, arg1) } // GetVersion mocks base method. -func (m *MockService) GetVersion(arg0 context.Context) (*types.VersionInfo, error) { +func (m *MockService) GetVersion(ctx context.Context) (*types.VersionInfo, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetVersion", arg0) + ret := m.ctrl.Call(m, "GetVersion", ctx) ret0, _ := ret[0].(*types.VersionInfo) ret1, _ := ret[1].(error) return ret0, ret1 } // GetVersion indicates an expected call of GetVersion. -func (mr *MockServiceMockRecorder) GetVersion(arg0 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) GetVersion(ctx any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetVersion", reflect.TypeOf((*MockService)(nil).GetVersion), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetVersion", reflect.TypeOf((*MockService)(nil).GetVersion), ctx) } // SubscribeEvents mocks base method. -func (m *MockService) SubscribeEvents(arg0 context.Context, arg1 map[string][]string) (<-chan *events.Event, <-chan error) { +func (m *MockService) SubscribeEvents(ctx context.Context, filters map[string][]string) (<-chan *events.Event, <-chan error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "SubscribeEvents", arg0, arg1) + ret := m.ctrl.Call(m, "SubscribeEvents", ctx, filters) ret0, _ := ret[0].(<-chan *events.Event) ret1, _ := ret[1].(<-chan error) return ret0, ret1 } // SubscribeEvents indicates an expected call of SubscribeEvents. -func (mr *MockServiceMockRecorder) SubscribeEvents(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) SubscribeEvents(ctx, filters any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeEvents", reflect.TypeOf((*MockService)(nil).SubscribeEvents), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SubscribeEvents", reflect.TypeOf((*MockService)(nil).SubscribeEvents), ctx, filters) } diff --git a/mocks/mocks_volume/volumesvc.go b/mocks/mocks_volume/volumesvc.go index 567e5623..6678efe8 100644 --- a/mocks/mocks_volume/volumesvc.go +++ b/mocks/mocks_volume/volumesvc.go @@ -1,5 +1,10 @@ // Code generated by MockGen. DO NOT EDIT. // Source: github.com/runfinch/finch-daemon/api/handlers/volume (interfaces: Service) +// +// Generated by this command: +// +// mockgen --destination=../../../mocks/mocks_volume/volumesvc.go -package=mocks_volume github.com/runfinch/finch-daemon/api/handlers/volume Service +// // Package mocks_volume is a generated GoMock package. package mocks_volume @@ -9,14 +14,15 @@ import ( reflect "reflect" native "github.com/containerd/nerdctl/v2/pkg/inspecttypes/native" - gomock "github.com/golang/mock/gomock" types "github.com/runfinch/finch-daemon/api/types" + gomock "go.uber.org/mock/gomock" ) // MockService is a mock of Service interface. type MockService struct { ctrl *gomock.Controller recorder *MockServiceMockRecorder + isgomock struct{} } // MockServiceMockRecorder is the mock recorder for MockService. @@ -37,60 +43,60 @@ func (m *MockService) EXPECT() *MockServiceMockRecorder { } // Create mocks base method. -func (m *MockService) Create(arg0 context.Context, arg1 string, arg2 []string) (*native.Volume, error) { +func (m *MockService) Create(ctx context.Context, name string, labels []string) (*native.Volume, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Create", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Create", ctx, name, labels) ret0, _ := ret[0].(*native.Volume) ret1, _ := ret[1].(error) return ret0, ret1 } // Create indicates an expected call of Create. -func (mr *MockServiceMockRecorder) Create(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Create(ctx, name, labels any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockService)(nil).Create), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockService)(nil).Create), ctx, name, labels) } // Inspect mocks base method. -func (m *MockService) Inspect(arg0 string) (*native.Volume, error) { +func (m *MockService) Inspect(volName string) (*native.Volume, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Inspect", arg0) + ret := m.ctrl.Call(m, "Inspect", volName) ret0, _ := ret[0].(*native.Volume) ret1, _ := ret[1].(error) return ret0, ret1 } // Inspect indicates an expected call of Inspect. -func (mr *MockServiceMockRecorder) Inspect(arg0 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Inspect(volName any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), arg0) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Inspect", reflect.TypeOf((*MockService)(nil).Inspect), volName) } // List mocks base method. -func (m *MockService) List(arg0 context.Context, arg1 []string) (*types.VolumesListResponse, error) { +func (m *MockService) List(ctx context.Context, filters []string) (*types.VolumesListResponse, error) { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "List", arg0, arg1) + ret := m.ctrl.Call(m, "List", ctx, filters) ret0, _ := ret[0].(*types.VolumesListResponse) ret1, _ := ret[1].(error) return ret0, ret1 } // List indicates an expected call of List. -func (mr *MockServiceMockRecorder) List(arg0, arg1 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) List(ctx, filters any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), arg0, arg1) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockService)(nil).List), ctx, filters) } // Remove mocks base method. -func (m *MockService) Remove(arg0 context.Context, arg1 string, arg2 bool) error { +func (m *MockService) Remove(ctx context.Context, volName string, force bool) error { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "Remove", arg0, arg1, arg2) + ret := m.ctrl.Call(m, "Remove", ctx, volName, force) ret0, _ := ret[0].(error) return ret0 } // Remove indicates an expected call of Remove. -func (mr *MockServiceMockRecorder) Remove(arg0, arg1, arg2 interface{}) *gomock.Call { +func (mr *MockServiceMockRecorder) Remove(ctx, volName, force any) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), arg0, arg1, arg2) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Remove", reflect.TypeOf((*MockService)(nil).Remove), ctx, volName, force) } diff --git a/pkg/archive/archive_test.go b/pkg/archive/archive_test.go index 39799624..4c44ddcc 100644 --- a/pkg/archive/archive_test.go +++ b/pkg/archive/archive_test.go @@ -10,7 +10,7 @@ import ( "os" "testing" - "github.com/golang/mock/gomock" + "go.uber.org/mock/gomock" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/pkg/errors"