From f96d341a31d9875e0f23f12ab8665b251b505298 Mon Sep 17 00:00:00 2001 From: Akihiro Suda Date: Thu, 29 Jun 2023 22:54:40 +0900 Subject: [PATCH] v2.0.0-alpha.0; add --print-semver=(major|minor|patch) Signed-off-by: Akihiro Suda --- Makefile | 6 +- README.md | 75 +++++++++++++----------- cmd/rootlessctl/main.go | 4 +- cmd/rootlessctl/port.go | 4 +- cmd/rootlesskit-docker-proxy/main.go | 6 +- cmd/rootlesskit/main.go | 47 +++++++++++---- go.mod | 3 +- go.sum | 2 + pkg/api/client/client.go | 6 +- pkg/api/router/router.go | 8 +-- pkg/child/child.go | 14 ++--- pkg/copyup/tmpfssymlink/tmpfssymlink.go | 2 +- pkg/messages/messages.go | 2 +- pkg/network/lxcusernic/lxcusernic.go | 8 +-- pkg/network/network.go | 4 +- pkg/network/parentutils/parentutils.go | 2 +- pkg/network/pasta/pasta.go | 12 ++-- pkg/network/slirp4netns/slirp4netns.go | 12 ++-- pkg/network/vpnkit/vpnkit.go | 8 +-- pkg/parent/dynidtools/dynidtools.go | 2 +- pkg/parent/dynidtools/dynidtools_test.go | 2 +- pkg/parent/parent.go | 18 +++--- pkg/parent/parent_test.go | 2 +- pkg/port/builtin/builtin.go | 6 +- pkg/port/builtin/builtin_test.go | 4 +- pkg/port/builtin/child/child.go | 8 +-- pkg/port/builtin/msg/msg.go | 4 +- pkg/port/builtin/parent/parent.go | 14 ++--- pkg/port/builtin/parent/tcp/tcp.go | 4 +- pkg/port/builtin/parent/udp/udp.go | 6 +- pkg/port/port.go | 2 +- pkg/port/portutil/portutil.go | 6 +- pkg/port/portutil/portutil_test.go | 2 +- pkg/port/slirp4netns/slirp4netns.go | 6 +- pkg/port/testsuite/testsuite.go | 2 +- pkg/sigproxy/sigproxy.go | 2 +- pkg/version/version.go | 2 +- 37 files changed, 174 insertions(+), 143 deletions(-) diff --git a/Makefile b/Makefile index 9fbb21b7..14bc8245 100644 --- a/Makefile +++ b/Makefile @@ -10,13 +10,13 @@ clean: $(RM) -r bin/ _artifact/ bin/rootlesskit: $(GO_FILES) - $(GO) build -o $@ -v github.com/rootless-containers/rootlesskit/cmd/rootlesskit + $(GO) build -o $@ -v ./cmd/rootlesskit bin/rootlessctl: $(GO_FILES) - $(GO) build -o $@ -v github.com/rootless-containers/rootlesskit/cmd/rootlessctl + $(GO) build -o $@ -v ./cmd/rootlessctl bin/rootlesskit-docker-proxy: $(GO_FILES) - $(GO) build -o $@ -v github.com/rootless-containers/rootlesskit/cmd/rootlesskit-docker-proxy + $(GO) build -o $@ -v ./cmd/rootlesskit-docker-proxy .PHONY: cross cross: diff --git a/README.md b/README.md index 9a048b35..d36cfa4b 100644 --- a/README.md +++ b/README.md @@ -154,78 +154,83 @@ USAGE: rootlesskit [global options] [arguments...] VERSION: - 1.1.0 + 2.0.0-alpha.0 DESCRIPTION: RootlessKit is a Linux-native implementation of "fake root" using user_namespaces(7). - + Web site: https://github.com/rootless-containers/rootlesskit - + Examples: # spawn a shell with a new user namespace and a mount namespace rootlesskit bash - + # make /etc writable rootlesskit --copy-up=/etc bash - + # set mount propagation to rslave rootlesskit --propagation=rslave bash - + # create a network namespace with slirp4netns, and expose 80/tcp on the namespace as 8080/tcp on the host rootlesskit --copy-up=/etc --net=slirp4netns --disable-host-loopback --port-driver=builtin -p 127.0.0.1:8080:80/tcp bash - + Note: RootlessKit requires /etc/subuid and /etc/subgid to be configured by the real root user. See https://rootlesscontaine.rs/getting-started/common/ . OPTIONS: - Misc: + Misc: --debug debug mode (default: false) - --help, -h show help (default: false) - --version, -v print the version (default: false) - - Mount: + --print-semver value print a version component as a decimal integer [major, minor, patch] + --help, -h show help + --version, -v print the version + + Mount: --copy-up value [ --copy-up value ] mount a filesystem and copy-up the contents. e.g. "--copy-up=/etc" (typically required for non-host network) --copy-up-mode value copy-up mode [tmpfs+symlink] --propagation value mount propagation [rprivate, rslave] - - Network: - --net value network driver [host, slirp4netns, vpnkit, lxc-user-nic(experimental)] - --mtu value MTU for non-host network (default: 65520 for slirp4netns, 1500 for others) (default: 0) - --cidr value CIDR for slirp4netns network (default: 10.0.2.0/24) - --ifname value Network interface name (default: tap0 for slirp4netns and vpnkit, eth0 for lxc-user-nic) + + Network: + --net value network driver [host, pasta(experimental), slirp4netns, vpnkit, lxc-user-nic(experimental)] + --mtu value MTU for non-host network (default: 65520 for pasta and slirp4netns, 1500 for others) (default: 0) + --cidr value CIDR for pasta and slirp4netns networks (default: 10.0.2.0/24) + --ifname value Network interface name (default: tap0 for pasta, slirp4netns, and vpnkit; eth0 for lxc-user-nic) --disable-host-loopback prohibit connecting to 127.0.0.1:* on the host namespace (default: false) - --ipv6 enable IPv6 routing. Unrelated to port forwarding. Only supported for slirp4netns. (experimental) (default: false) - - Network [lxc-user-nic]: + --ipv6 enable IPv6 routing. Unrelated to port forwarding. Only supported for pasta and slirp4netns. (experimental) (default: false) + --detach-netns detach network namespaces (default: false) + + Network [lxc-user-nic]: --lxc-user-nic-binary value path of lxc-user-nic binary for --net=lxc-user-nic --lxc-user-nic-bridge value lxc-user-nic bridge name - - Network [slirp4netns]: + + Network [pasta]: + --pasta-binary value path of pasta binary for --net=pasta + + Network [slirp4netns]: --slirp4netns-binary value path of slirp4netns binary for --net=slirp4netns --slirp4netns-sandbox value enable slirp4netns sandbox (experimental) [auto, true, false] (the default is planned to be "auto" in future) --slirp4netns-seccomp value enable slirp4netns seccomp (experimental) [auto, true, false] (the default is planned to be "auto" in future) - - Network [vpnkit]: + + Network [vpnkit]: --vpnkit-binary value path of VPNKit binary for --net=vpnkit - - Port: - --port-driver value port driver for non-host network. [none, builtin, slirp4netns] + + Port: + --port-driver value port driver for non-host network. [none, implicit (for pasta), builtin, slirp4netns] --publish value, -p value [ --publish value, -p value ] publish ports. e.g. "127.0.0.1:8080:80/tcp" - - Process: + + Process: --pidns create a PID namespace (default: false) --cgroupns create a cgroup namespace (default: false) --utsns create a UTS namespace (default: false) --ipcns create an IPC namespace (default: false) --reaper value enable process reaper. Requires --pidns. [auto,true,false] --evacuate-cgroup2 value evacuate processes into the specified subgroup. Requires --pidns and --cgroupns - - State: + + State: --state-dir value state directory - - SubID: + + SubID: --subid-source value the source of the subids. "dynamic" executes /usr/bin/getsubids. "static" reads /etc/{subuid,subgid}. [auto,dynamic,static] - + ``` ## State directory diff --git a/cmd/rootlessctl/main.go b/cmd/rootlessctl/main.go index 6203eddf..d39e09c1 100644 --- a/cmd/rootlessctl/main.go +++ b/cmd/rootlessctl/main.go @@ -9,8 +9,8 @@ import ( "github.com/sirupsen/logrus" "github.com/urfave/cli/v2" - "github.com/rootless-containers/rootlesskit/pkg/api/client" - "github.com/rootless-containers/rootlesskit/pkg/version" + "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + "github.com/rootless-containers/rootlesskit/v2/pkg/version" ) func main() { diff --git a/cmd/rootlessctl/port.go b/cmd/rootlessctl/port.go index b313e9d2..a529ce0d 100644 --- a/cmd/rootlessctl/port.go +++ b/cmd/rootlessctl/port.go @@ -11,8 +11,8 @@ import ( "github.com/urfave/cli/v2" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/portutil" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/portutil" ) var listPortsCommand = cli.Command{ diff --git a/cmd/rootlesskit-docker-proxy/main.go b/cmd/rootlesskit-docker-proxy/main.go index 7ea7f5a7..771658eb 100644 --- a/cmd/rootlesskit-docker-proxy/main.go +++ b/cmd/rootlesskit-docker-proxy/main.go @@ -15,9 +15,9 @@ import ( "strings" "syscall" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/api/client" - "github.com/rootless-containers/rootlesskit/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" "github.com/sirupsen/logrus" ) diff --git a/cmd/rootlesskit/main.go b/cmd/rootlesskit/main.go index 1149c525..bb71aa58 100644 --- a/cmd/rootlesskit/main.go +++ b/cmd/rootlesskit/main.go @@ -10,21 +10,22 @@ import ( "strings" "syscall" + "github.com/Masterminds/semver/v3" "github.com/sirupsen/logrus" "github.com/urfave/cli/v2" - "github.com/rootless-containers/rootlesskit/pkg/child" - "github.com/rootless-containers/rootlesskit/pkg/common" - "github.com/rootless-containers/rootlesskit/pkg/copyup/tmpfssymlink" - "github.com/rootless-containers/rootlesskit/pkg/network/lxcusernic" - "github.com/rootless-containers/rootlesskit/pkg/network/pasta" - "github.com/rootless-containers/rootlesskit/pkg/network/slirp4netns" - "github.com/rootless-containers/rootlesskit/pkg/network/vpnkit" - "github.com/rootless-containers/rootlesskit/pkg/parent" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin" - "github.com/rootless-containers/rootlesskit/pkg/port/portutil" - slirp4netns_port "github.com/rootless-containers/rootlesskit/pkg/port/slirp4netns" - "github.com/rootless-containers/rootlesskit/pkg/version" + "github.com/rootless-containers/rootlesskit/v2/pkg/child" + "github.com/rootless-containers/rootlesskit/v2/pkg/common" + "github.com/rootless-containers/rootlesskit/v2/pkg/copyup/tmpfssymlink" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/lxcusernic" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/pasta" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/slirp4netns" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/vpnkit" + "github.com/rootless-containers/rootlesskit/v2/pkg/parent" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/portutil" + slirp4netns_port "github.com/rootless-containers/rootlesskit/v2/pkg/port/slirp4netns" + "github.com/rootless-containers/rootlesskit/v2/pkg/version" ) func main() { @@ -72,6 +73,10 @@ See https://rootlesscontaine.rs/getting-started/common/ . Usage: "debug mode", Destination: &debug, }, CategoryMisc), + Categorize(&cli.StringFlag{ + Name: "print-semver", + Usage: "print a version component as a decimal integer [major, minor, patch]", + }, CategoryMisc), Categorize(&cli.StringFlag{ Name: "state-dir", Usage: "state directory", @@ -222,9 +227,27 @@ OPTIONS: Formatter: logrus.StandardLogger().Formatter, } logrus.SetFormatter(formatter) + return nil } app.Action = func(clicontext *cli.Context) error { + if s := clicontext.String("print-semver"); s != "" { + sv, err := semver.NewVersion(version.Version) + if err != nil { + return fmt.Errorf("failed to parse version %q: %w", version.Version, err) + } + switch s { + case "major": + fmt.Fprintln(clicontext.App.Writer, sv.Major()) + case "minor": + fmt.Fprintln(clicontext.App.Writer, sv.Minor()) + case "patch": + fmt.Fprintln(clicontext.App.Writer, sv.Patch()) + default: + return fmt.Errorf("expected --print-semver=(major|minor|patch), got %q", s) + } + return nil + } if clicontext.NArg() < 1 { return errors.New("no command specified") } diff --git a/go.mod b/go.mod index b38fbed3..b658bc2e 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,9 @@ -module github.com/rootless-containers/rootlesskit +module github.com/rootless-containers/rootlesskit/v2 go 1.19 require ( + github.com/Masterminds/semver/v3 v3.2.1 github.com/containernetworking/plugins v1.3.0 github.com/gofrs/flock v0.8.1 github.com/google/uuid v1.3.0 diff --git a/go.sum b/go.sum index 07919154..1f16679d 100644 --- a/go.sum +++ b/go.sum @@ -1,3 +1,5 @@ +github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0= +github.com/Masterminds/semver/v3 v3.2.1/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= github.com/containernetworking/cni v1.1.2 h1:wtRGZVv7olUHMOqouPpn3cXJWpJgM6+EUl31EQbXALQ= github.com/containernetworking/plugins v1.3.0 h1:QVNXMT6XloyMUoO2wUOqWTC1hWFV62Q6mVDp5H1HnjM= github.com/containernetworking/plugins v1.3.0/go.mod h1:Pc2wcedTQQCVuROOOaLBPPxrEXqqXBFt3cZ+/yVg6l0= diff --git a/pkg/api/client/client.go b/pkg/api/client/client.go index 3863ebf4..2d948e2c 100644 --- a/pkg/api/client/client.go +++ b/pkg/api/client/client.go @@ -7,9 +7,9 @@ import ( "fmt" "net/http" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/httputil" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/httputil" ) type Client interface { diff --git a/pkg/api/router/router.go b/pkg/api/router/router.go index 0de1c86a..868f25d8 100644 --- a/pkg/api/router/router.go +++ b/pkg/api/router/router.go @@ -9,10 +9,10 @@ import ( "strconv" "github.com/gorilla/mux" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/httputil" - "github.com/rootless-containers/rootlesskit/pkg/version" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/httputil" + "github.com/rootless-containers/rootlesskit/v2/pkg/version" ) // NetworkDriver is implemented by network.ParentDriver diff --git a/pkg/child/child.go b/pkg/child/child.go index 57a071ca..7777c411 100644 --- a/pkg/child/child.go +++ b/pkg/child/child.go @@ -14,13 +14,13 @@ import ( "time" "github.com/containernetworking/plugins/pkg/ns" - "github.com/rootless-containers/rootlesskit/pkg/common" - "github.com/rootless-containers/rootlesskit/pkg/copyup" - "github.com/rootless-containers/rootlesskit/pkg/messages" - "github.com/rootless-containers/rootlesskit/pkg/network" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/sigproxy" - sigproxysignal "github.com/rootless-containers/rootlesskit/pkg/sigproxy/signal" + "github.com/rootless-containers/rootlesskit/v2/pkg/common" + "github.com/rootless-containers/rootlesskit/v2/pkg/copyup" + "github.com/rootless-containers/rootlesskit/v2/pkg/messages" + "github.com/rootless-containers/rootlesskit/v2/pkg/network" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/sigproxy" + sigproxysignal "github.com/rootless-containers/rootlesskit/v2/pkg/sigproxy/signal" "github.com/sirupsen/logrus" "golang.org/x/sys/unix" ) diff --git a/pkg/copyup/tmpfssymlink/tmpfssymlink.go b/pkg/copyup/tmpfssymlink/tmpfssymlink.go index 898dd143..c9a9f1a7 100644 --- a/pkg/copyup/tmpfssymlink/tmpfssymlink.go +++ b/pkg/copyup/tmpfssymlink/tmpfssymlink.go @@ -8,7 +8,7 @@ import ( "golang.org/x/sys/unix" - "github.com/rootless-containers/rootlesskit/pkg/copyup" + "github.com/rootless-containers/rootlesskit/v2/pkg/copyup" ) func NewChildDriver() copyup.ChildDriver { diff --git a/pkg/messages/messages.go b/pkg/messages/messages.go index 1893b7d0..aae9b9e6 100644 --- a/pkg/messages/messages.go +++ b/pkg/messages/messages.go @@ -5,7 +5,7 @@ import ( "io" "reflect" - "github.com/rootless-containers/rootlesskit/pkg/lowlevelmsgutil" + "github.com/rootless-containers/rootlesskit/v2/pkg/lowlevelmsgutil" "github.com/sirupsen/logrus" ) diff --git a/pkg/network/lxcusernic/lxcusernic.go b/pkg/network/lxcusernic/lxcusernic.go index de5b1f36..4eaf9456 100644 --- a/pkg/network/lxcusernic/lxcusernic.go +++ b/pkg/network/lxcusernic/lxcusernic.go @@ -16,10 +16,10 @@ import ( "github.com/sirupsen/logrus" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/common" - "github.com/rootless-containers/rootlesskit/pkg/messages" - "github.com/rootless-containers/rootlesskit/pkg/network" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/common" + "github.com/rootless-containers/rootlesskit/v2/pkg/messages" + "github.com/rootless-containers/rootlesskit/v2/pkg/network" ) func NewParentDriver(binary string, mtu int, bridge, ifname string) (network.ParentDriver, error) { diff --git a/pkg/network/network.go b/pkg/network/network.go index 5594c49f..74238787 100644 --- a/pkg/network/network.go +++ b/pkg/network/network.go @@ -3,8 +3,8 @@ package network import ( "context" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/messages" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/messages" ) // ParentDriver is called from the parent namespace diff --git a/pkg/network/parentutils/parentutils.go b/pkg/network/parentutils/parentutils.go index 4ef7834a..34ab6ecb 100644 --- a/pkg/network/parentutils/parentutils.go +++ b/pkg/network/parentutils/parentutils.go @@ -5,7 +5,7 @@ import ( "os" "strconv" - "github.com/rootless-containers/rootlesskit/pkg/common" + "github.com/rootless-containers/rootlesskit/v2/pkg/common" ) func PrepareTap(childPID int, childNetNsPath string, tap string) error { diff --git a/pkg/network/pasta/pasta.go b/pkg/network/pasta/pasta.go index bb91076d..e5d7291a 100644 --- a/pkg/network/pasta/pasta.go +++ b/pkg/network/pasta/pasta.go @@ -12,12 +12,12 @@ import ( "github.com/sirupsen/logrus" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/common" - "github.com/rootless-containers/rootlesskit/pkg/messages" - "github.com/rootless-containers/rootlesskit/pkg/network" - "github.com/rootless-containers/rootlesskit/pkg/network/iputils" - "github.com/rootless-containers/rootlesskit/pkg/network/parentutils" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/common" + "github.com/rootless-containers/rootlesskit/v2/pkg/messages" + "github.com/rootless-containers/rootlesskit/v2/pkg/network" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/iputils" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/parentutils" ) // NewParentDriver instantiates new parent driver. diff --git a/pkg/network/slirp4netns/slirp4netns.go b/pkg/network/slirp4netns/slirp4netns.go index bd7d22f9..e87d539b 100644 --- a/pkg/network/slirp4netns/slirp4netns.go +++ b/pkg/network/slirp4netns/slirp4netns.go @@ -17,12 +17,12 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/sys/unix" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/common" - "github.com/rootless-containers/rootlesskit/pkg/messages" - "github.com/rootless-containers/rootlesskit/pkg/network" - "github.com/rootless-containers/rootlesskit/pkg/network/iputils" - "github.com/rootless-containers/rootlesskit/pkg/network/parentutils" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/common" + "github.com/rootless-containers/rootlesskit/v2/pkg/messages" + "github.com/rootless-containers/rootlesskit/v2/pkg/network" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/iputils" + "github.com/rootless-containers/rootlesskit/v2/pkg/network/parentutils" ) type Features struct { diff --git a/pkg/network/vpnkit/vpnkit.go b/pkg/network/vpnkit/vpnkit.go index 5446783d..69723351 100644 --- a/pkg/network/vpnkit/vpnkit.go +++ b/pkg/network/vpnkit/vpnkit.go @@ -21,10 +21,10 @@ import ( "github.com/sirupsen/logrus" "github.com/songgao/water" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/common" - "github.com/rootless-containers/rootlesskit/pkg/messages" - "github.com/rootless-containers/rootlesskit/pkg/network" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/common" + "github.com/rootless-containers/rootlesskit/v2/pkg/messages" + "github.com/rootless-containers/rootlesskit/v2/pkg/network" ) func NewParentDriver(binary string, mtu int, ifname string, disableHostLoopback bool) network.ParentDriver { diff --git a/pkg/parent/dynidtools/dynidtools.go b/pkg/parent/dynidtools/dynidtools.go index c481a575..15f25f4d 100644 --- a/pkg/parent/dynidtools/dynidtools.go +++ b/pkg/parent/dynidtools/dynidtools.go @@ -10,7 +10,7 @@ import ( "strconv" "strings" - "github.com/rootless-containers/rootlesskit/pkg/parent/idtools" + "github.com/rootless-containers/rootlesskit/v2/pkg/parent/idtools" "github.com/sirupsen/logrus" ) diff --git a/pkg/parent/dynidtools/dynidtools_test.go b/pkg/parent/dynidtools/dynidtools_test.go index 2b8a5566..083cb46c 100644 --- a/pkg/parent/dynidtools/dynidtools_test.go +++ b/pkg/parent/dynidtools/dynidtools_test.go @@ -4,7 +4,7 @@ import ( "strings" "testing" - "github.com/rootless-containers/rootlesskit/pkg/parent/idtools" + "github.com/rootless-containers/rootlesskit/v2/pkg/parent/idtools" "gotest.tools/v3/assert" ) diff --git a/pkg/parent/parent.go b/pkg/parent/parent.go index f76da85f..e19ee0a4 100644 --- a/pkg/parent/parent.go +++ b/pkg/parent/parent.go @@ -15,15 +15,15 @@ import ( "github.com/gofrs/flock" "github.com/gorilla/mux" - "github.com/rootless-containers/rootlesskit/pkg/api/router" - "github.com/rootless-containers/rootlesskit/pkg/messages" - "github.com/rootless-containers/rootlesskit/pkg/network" - "github.com/rootless-containers/rootlesskit/pkg/parent/cgrouputil" - "github.com/rootless-containers/rootlesskit/pkg/parent/dynidtools" - "github.com/rootless-containers/rootlesskit/pkg/parent/idtools" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/sigproxy" - "github.com/rootless-containers/rootlesskit/pkg/sigproxy/signal" + "github.com/rootless-containers/rootlesskit/v2/pkg/api/router" + "github.com/rootless-containers/rootlesskit/v2/pkg/messages" + "github.com/rootless-containers/rootlesskit/v2/pkg/network" + "github.com/rootless-containers/rootlesskit/v2/pkg/parent/cgrouputil" + "github.com/rootless-containers/rootlesskit/v2/pkg/parent/dynidtools" + "github.com/rootless-containers/rootlesskit/v2/pkg/parent/idtools" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/sigproxy" + "github.com/rootless-containers/rootlesskit/v2/pkg/sigproxy/signal" "github.com/sirupsen/logrus" "golang.org/x/sys/unix" ) diff --git a/pkg/parent/parent_test.go b/pkg/parent/parent_test.go index a6e57965..d18e306f 100644 --- a/pkg/parent/parent_test.go +++ b/pkg/parent/parent_test.go @@ -5,7 +5,7 @@ import ( "os/user" "testing" - "github.com/rootless-containers/rootlesskit/pkg/parent/idtools" + "github.com/rootless-containers/rootlesskit/v2/pkg/parent/idtools" "golang.org/x/sys/unix" "gotest.tools/v3/assert" ) diff --git a/pkg/port/builtin/builtin.go b/pkg/port/builtin/builtin.go index ca3f10b2..265e4e3c 100644 --- a/pkg/port/builtin/builtin.go +++ b/pkg/port/builtin/builtin.go @@ -3,9 +3,9 @@ package builtin import ( "io" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/child" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/parent" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/child" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/parent" ) var ( diff --git a/pkg/port/builtin/builtin_test.go b/pkg/port/builtin/builtin_test.go index 10d94721..a2bedf14 100644 --- a/pkg/port/builtin/builtin_test.go +++ b/pkg/port/builtin/builtin_test.go @@ -4,8 +4,8 @@ import ( "os" "testing" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/testsuite" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/testsuite" ) func TestMain(m *testing.M) { diff --git a/pkg/port/builtin/child/child.go b/pkg/port/builtin/child/child.go index ca6421db..83ab638f 100644 --- a/pkg/port/builtin/child/child.go +++ b/pkg/port/builtin/child/child.go @@ -12,10 +12,10 @@ import ( "golang.org/x/sys/unix" "github.com/containernetworking/plugins/pkg/ns" - "github.com/rootless-containers/rootlesskit/pkg/lowlevelmsgutil" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/msg" - opaquepkg "github.com/rootless-containers/rootlesskit/pkg/port/builtin/opaque" + "github.com/rootless-containers/rootlesskit/v2/pkg/lowlevelmsgutil" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/msg" + opaquepkg "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/opaque" ) func NewDriver(logWriter io.Writer) port.ChildDriver { diff --git a/pkg/port/builtin/msg/msg.go b/pkg/port/builtin/msg/msg.go index 8e93164f..f77468ec 100644 --- a/pkg/port/builtin/msg/msg.go +++ b/pkg/port/builtin/msg/msg.go @@ -8,8 +8,8 @@ import ( "golang.org/x/sys/unix" - "github.com/rootless-containers/rootlesskit/pkg/lowlevelmsgutil" - "github.com/rootless-containers/rootlesskit/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/lowlevelmsgutil" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" ) const ( diff --git a/pkg/port/builtin/parent/parent.go b/pkg/port/builtin/parent/parent.go index 1c53e26a..80a17cc9 100644 --- a/pkg/port/builtin/parent/parent.go +++ b/pkg/port/builtin/parent/parent.go @@ -14,13 +14,13 @@ import ( "syscall" "time" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/msg" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/opaque" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/parent/tcp" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/parent/udp" - "github.com/rootless-containers/rootlesskit/pkg/port/portutil" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/msg" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/opaque" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/parent/tcp" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/parent/udp" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/portutil" ) // NewDriver for builtin driver. diff --git a/pkg/port/builtin/parent/tcp/tcp.go b/pkg/port/builtin/parent/tcp/tcp.go index 32c71446..952add79 100644 --- a/pkg/port/builtin/parent/tcp/tcp.go +++ b/pkg/port/builtin/parent/tcp/tcp.go @@ -8,8 +8,8 @@ import ( "strconv" "sync" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/msg" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/msg" ) func Run(socketPath string, spec port.Spec, stopCh <-chan struct{}, stoppedCh chan error, logWriter io.Writer) error { diff --git a/pkg/port/builtin/parent/udp/udp.go b/pkg/port/builtin/parent/udp/udp.go index 47f3a646..90a8f254 100644 --- a/pkg/port/builtin/parent/udp/udp.go +++ b/pkg/port/builtin/parent/udp/udp.go @@ -7,9 +7,9 @@ import ( "os" "strconv" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/msg" - "github.com/rootless-containers/rootlesskit/pkg/port/builtin/parent/udp/udpproxy" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/msg" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/builtin/parent/udp/udpproxy" ) func Run(socketPath string, spec port.Spec, stopCh <-chan struct{}, stoppedCh chan error, logWriter io.Writer) error { diff --git a/pkg/port/port.go b/pkg/port/port.go index 9581a9ee..d0213aed 100644 --- a/pkg/port/port.go +++ b/pkg/port/port.go @@ -4,7 +4,7 @@ import ( "context" "net" - "github.com/rootless-containers/rootlesskit/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" ) type Spec struct { diff --git a/pkg/port/portutil/portutil.go b/pkg/port/portutil/portutil.go index a1e649ab..36fc9937 100644 --- a/pkg/port/portutil/portutil.go +++ b/pkg/port/portutil/portutil.go @@ -7,7 +7,7 @@ import ( "strings" "text/scanner" - "github.com/rootless-containers/rootlesskit/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" ) // ParsePortSpec parses a Docker-like representation of PortSpec, but with @@ -16,13 +16,13 @@ import ( // // Format is as follows: // -// :[:]:/ +// :[:]:/ // // Note that (child IP being optional) the format can either contain 5 or 4 // components. When using IPv6 IP addresses, addresses must use square brackets // to prevent the colons being mistaken for delimiters. For example: // -// [::1]:8080:[::2]:80/udp +// [::1]:8080:[::2]:80/udp func ParsePortSpec(portSpec string) (*port.Spec, error) { const ( parentIP = iota diff --git a/pkg/port/portutil/portutil_test.go b/pkg/port/portutil/portutil_test.go index e08502d7..9e036e16 100644 --- a/pkg/port/portutil/portutil_test.go +++ b/pkg/port/portutil/portutil_test.go @@ -4,7 +4,7 @@ import ( "reflect" "testing" - "github.com/rootless-containers/rootlesskit/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" "gotest.tools/v3/assert" ) diff --git a/pkg/port/slirp4netns/slirp4netns.go b/pkg/port/slirp4netns/slirp4netns.go index 7656a509..7f3e6270 100644 --- a/pkg/port/slirp4netns/slirp4netns.go +++ b/pkg/port/slirp4netns/slirp4netns.go @@ -10,9 +10,9 @@ import ( "strings" "sync" - "github.com/rootless-containers/rootlesskit/pkg/api" - "github.com/rootless-containers/rootlesskit/pkg/port" - "github.com/rootless-containers/rootlesskit/pkg/port/portutil" + "github.com/rootless-containers/rootlesskit/v2/pkg/api" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port/portutil" ) func NewParentDriver(logWriter io.Writer, apiSocketPath string) (port.ParentDriver, error) { diff --git a/pkg/port/testsuite/testsuite.go b/pkg/port/testsuite/testsuite.go index 94f2f621..e4e7b5d7 100644 --- a/pkg/port/testsuite/testsuite.go +++ b/pkg/port/testsuite/testsuite.go @@ -16,7 +16,7 @@ import ( "testing" "time" - "github.com/rootless-containers/rootlesskit/pkg/port" + "github.com/rootless-containers/rootlesskit/v2/pkg/port" ) const ( diff --git a/pkg/sigproxy/sigproxy.go b/pkg/sigproxy/sigproxy.go index 7f6eec1d..8a844cb8 100644 --- a/pkg/sigproxy/sigproxy.go +++ b/pkg/sigproxy/sigproxy.go @@ -7,7 +7,7 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/sys/unix" - "github.com/rootless-containers/rootlesskit/pkg/sigproxy/signal" + "github.com/rootless-containers/rootlesskit/v2/pkg/sigproxy/signal" ) // ForwardAllSignals forwards signals. diff --git a/pkg/version/version.go b/pkg/version/version.go index 92cad230..258edf5b 100644 --- a/pkg/version/version.go +++ b/pkg/version/version.go @@ -1,3 +1,3 @@ package version -const Version = "1.1.1+dev" +const Version = "2.0.0-alpha.0"