Merge pull request #20464 from Luap99/libpod-remote

add !remote tag to packages that should not be included in the remote client + vendor c/common
This commit is contained in:
openshift-ci[bot] 2023-10-24 15:33:03 +00:00 committed by GitHub
commit 83d7c3849f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
171 changed files with 427 additions and 536 deletions

2
go.mod
View File

@ -13,7 +13,7 @@ require (
github.com/containernetworking/cni v1.1.2
github.com/containernetworking/plugins v1.3.0
github.com/containers/buildah v1.32.1-0.20231016164031-ade05159a485
github.com/containers/common v0.56.1-0.20231023085521-d3170cb89b07
github.com/containers/common v0.56.1-0.20231023143107-8d0bd259cb7c
github.com/containers/conmon v2.0.20+incompatible
github.com/containers/gvisor-tap-vsock v0.7.1
github.com/containers/image/v5 v5.28.0

4
go.sum
View File

@ -251,8 +251,8 @@ github.com/containernetworking/plugins v1.3.0 h1:QVNXMT6XloyMUoO2wUOqWTC1hWFV62Q
github.com/containernetworking/plugins v1.3.0/go.mod h1:Pc2wcedTQQCVuROOOaLBPPxrEXqqXBFt3cZ+/yVg6l0=
github.com/containers/buildah v1.32.1-0.20231016164031-ade05159a485 h1:RqgxHW2iP5QJ3aRahT+KGI2aGXVZeZHTeulmeZQV0y0=
github.com/containers/buildah v1.32.1-0.20231016164031-ade05159a485/go.mod h1:gOMfotERP5Gz2pN+AnuM3ephId/YL9DmbOtVck6fWfE=
github.com/containers/common v0.56.1-0.20231023085521-d3170cb89b07 h1:OTiZ6TcimBmxGbBe/q2Ju33Kz1XetPoq0cDq/Aw0LDw=
github.com/containers/common v0.56.1-0.20231023085521-d3170cb89b07/go.mod h1:NGMoofxxOF8tno51JlwACw0HaUwaPS66h2N7CYJGFC0=
github.com/containers/common v0.56.1-0.20231023143107-8d0bd259cb7c h1:+5wIm8TWi18iu/WZhF6T9x693nmfpP9yqyrKCreDOOU=
github.com/containers/common v0.56.1-0.20231023143107-8d0bd259cb7c/go.mod h1:NGMoofxxOF8tno51JlwACw0HaUwaPS66h2N7CYJGFC0=
github.com/containers/conmon v2.0.20+incompatible h1:YbCVSFSCqFjjVwHTPINGdMX1F6JXHGTUje2ZYobNrkg=
github.com/containers/conmon v2.0.20+incompatible/go.mod h1:hgwZ2mtuDrppv78a/cOBNiCm6O0UMWGx1mu7P00nu5I=
github.com/containers/gvisor-tap-vsock v0.7.1 h1:+Rc+sOPplrkQb/BUXeN0ug8TxjgyrIqo/9P/eNS2A4c=

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,19 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"errors"
)
// replaceNetNS handle network namespace transitions after updating a
// container's state.
func replaceNetNS(netNSPath string, ctr *Container, newState *ContainerState) error {
return errors.New("replaceNetNS not supported on this platform")
}
// getNetNSPath retrieves the netns path to be stored in the database
func getNetNSPath(ctr *Container) string {
return ""
}

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,4 +1,5 @@
//go:build linux || freebsd
//go:build !remote && (linux || freebsd)
// +build !remote
// +build linux freebsd
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
// On FreeBSD, the container's mounts are in the global mount

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,17 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"errors"
"io"
)
func (c *Container) copyFromArchive(path string, chown, noOverwriteDirNonDir bool, rename map[string]string, reader io.Reader) (func() error, error) {
return nil, errors.New("not implemented (*Container) copyFromArchive")
}
func (c *Container) copyToArchive(path string, writer io.Writer) (func() error, error) {
return nil, errors.New("not implemented (*Container) copyToArchive")
}

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,5 +1,5 @@
//go:build freebsd
// +build freebsd
//go:build !remote
// +build !remote
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,4 +1,5 @@
//go:build linux || freebsd
//go:build !remote && (linux || freebsd)
// +build !remote
// +build linux freebsd
package libpod

View File

@ -1,5 +1,5 @@
//go:build freebsd
// +build freebsd
//go:build !remote
// +build !remote
package libpod

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote
// +build !remote
package libpod

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote
// +build !remote
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,99 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"context"
"errors"
"github.com/containers/common/libnetwork/etchosts"
"github.com/containers/podman/v4/libpod/define"
"github.com/containers/podman/v4/pkg/lookup"
spec "github.com/opencontainers/runtime-spec/specs-go"
)
func (c *Container) mountSHM(shmOptions string) error {
return errors.New("not implemented (*Container) mountSHM")
}
func (c *Container) unmountSHM(mount string) error {
return errors.New("not implemented (*Container) unmountSHM")
}
func (c *Container) cleanupOverlayMounts() error {
return errors.New("not implemented (*Container) cleanupOverlayMounts")
}
// prepare mounts the container and sets up other required resources like net
// namespaces
func (c *Container) prepare() error {
return errors.New("not implemented (*Container) prepare")
}
// resolveWorkDir resolves the container's workdir and, depending on the
// configuration, will create it, or error out if it does not exist.
// Note that the container must be mounted before.
func (c *Container) resolveWorkDir() error {
return errors.New("not implemented (*Container) resolveWorkDir")
}
// cleanupNetwork unmounts and cleans up the container's network
func (c *Container) cleanupNetwork() error {
return errors.New("not implemented (*Container) cleanupNetwork")
}
// reloadNetwork reloads the network for the given container, recreating
// firewall rules.
func (c *Container) reloadNetwork() error {
return errors.New("not implemented (*Container) reloadNetwork")
}
// Generate spec for a container
// Accepts a map of the container's dependencies
func (c *Container) generateSpec(ctx context.Context) (*spec.Spec, error) {
return nil, errors.New("not implemented (*Container) generateSpec")
}
func (c *Container) getUserOverrides() *lookup.Overrides {
return &lookup.Overrides{}
}
func (c *Container) checkpoint(ctx context.Context, options ContainerCheckpointOptions) (*define.CRIUCheckpointRestoreStatistics, int64, error) {
return nil, 0, errors.New("not implemented (*Container) checkpoint")
}
func (c *Container) restore(ctx context.Context, options ContainerCheckpointOptions) (criuStatistics *define.CRIUCheckpointRestoreStatistics, runtimeRestoreDuration int64, retErr error) {
return nil, 0, errors.New("not implemented (*Container) restore")
}
// getHostsEntries returns the container ip host entries for the correct netmode
func (c *Container) getHostsEntries() (etchosts.HostEntries, error) {
return nil, errors.New("unsupported (*Container) getHostsEntries")
}
// Fix ownership and permissions of the specified volume if necessary.
func (c *Container) fixVolumePermissions(v *ContainerNamedVolume) error {
return errors.New("unsupported (*Container) fixVolumePermissions")
}
func (c *Container) expectPodCgroup() (bool, error) {
return false, errors.New("unsupported (*Container) expectPodCgroup")
}
// Get cgroup path in a format suitable for the OCI spec
func (c *Container) getOCICgroupPath() (string, error) {
return "", errors.New("unsupported (*Container) getOCICgroupPath")
}
func getLocalhostHostEntry(c *Container) etchosts.HostEntries {
return nil
}
func isRootlessCgroupSet(cgroup string) bool {
return false
}
func openDirectory(path string) (fd int, err error) {
return -1, errors.New("unsupported openDirectory")
}

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote
// +build !remote
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,5 +1,5 @@
//go:build linux && systemd
// +build linux,systemd
//go:build !remote && linux && systemd
// +build !remote,linux,systemd
package libpod

View File

@ -1,4 +1,5 @@
//go:build !linux || !systemd
//go:build !remote && (!linux || !systemd)
// +build !remote
// +build !linux !systemd
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,4 +1,5 @@
//go:build linux || freebsd
//go:build !remote && (linux || freebsd)
// +build !remote
// +build linux freebsd
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,14 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"errors"
"github.com/containers/podman/v4/libpod/define"
)
func (c *Container) stat(containerMountPoint string, containerPath string) (*define.FileInfo, string, string, error) {
return nil, "", "", errors.New("Containers stat not supported on this platform")
}

View File

@ -1,5 +1,5 @@
//go:build freebsd
// +build freebsd
//go:build !remote
// +build !remote
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
#define _GNU_SOURCE
#include <errno.h>
#include <stdio.h>

View File

@ -1,5 +1,5 @@
//go:build linux && cgo
// +build linux,cgo
//go:build !remote && linux && cgo
// +build !remote,linux,cgo
package libpod

View File

@ -1,4 +1,5 @@
//go:build !(linux && cgo) && !freebsd
//go:build !remote && !(linux && cgo) && !freebsd
// +build !remote
// +build !linux !cgo
// +build !freebsd

View File

@ -1,7 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
type containerPlatformState struct {
}

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,5 +1,5 @@
//go:build systemd
// +build systemd
//go:build !remote && systemd
// +build !remote,systemd
package libpod

View File

@ -1,5 +1,5 @@
//go:build !systemd
// +build !systemd
//go:build !remote && !systemd
// +build !remote,!systemd
package libpod

View File

@ -1,5 +1,5 @@
//go:build !linux
// +build !linux
//go:build !remote && !linux
// +build !remote,!linux
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote && linux
// +build !remote,linux
package libpod

View File

@ -1,14 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"errors"
"github.com/containers/podman/v4/libpod/define"
)
func (r *Runtime) info() (*define.Info, error) {
return nil, errors.New("not implemented (*Runtime) info")
}

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote
// +build !remote
package libpod

View File

@ -1,4 +1,5 @@
//go:build linux || freebsd
//go:build !remote && (linux || freebsd)
// +build !remote
// +build linux freebsd
package libpod

View File

@ -1,5 +1,5 @@
//go:build freebsd
// +build freebsd
//go:build !remote
// +build !remote
package libpod

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote
// +build !remote
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
// SPDX-License-Identifier: Apache-2.0
//
// networking_pasta_linux.go - Start pasta(1) for user-mode connectivity

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote && linux
// +build !remote,linux
package libpod

View File

@ -1,87 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"errors"
"net"
"path/filepath"
"github.com/containers/common/libnetwork/types"
"github.com/containers/podman/v4/libpod/define"
"github.com/containers/storage/pkg/lockfile"
)
type RootlessNetNS struct {
dir string
Lock *lockfile.LockFile
}
// ocicniPortsToNetTypesPorts convert the old port format to the new one
// while deduplicating ports into ranges
func ocicniPortsToNetTypesPorts(ports []types.OCICNIPortMapping) []types.PortMapping {
return []types.PortMapping{}
}
func (c *Container) getContainerNetworkInfo() (*define.InspectNetworkSettings, error) {
return nil, errors.New("not implemented (*Container) getContainerNetworkInfo")
}
func (c *Container) setupRootlessNetwork() error {
return errors.New("not implemented (*Container) setupRootlessNetwork")
}
func (r *Runtime) setupNetNS(ctr *Container) error {
return errors.New("not implemented (*Runtime) setupNetNS")
}
// normalizeNetworkName takes a network name, a partial or a full network ID and returns the network name.
// If the network is not found an error is returned.
func (r *Runtime) normalizeNetworkName(nameOrID string) (string, error) {
return "", errors.New("not implemented (*Runtime) normalizeNetworkName")
}
// DisconnectContainerFromNetwork removes a container from its network
func (r *Runtime) DisconnectContainerFromNetwork(nameOrID, netName string, force bool) error {
return errors.New("not implemented (*Runtime) DisconnectContainerFromNetwork")
}
// ConnectContainerToNetwork connects a container to a network
func (r *Runtime) ConnectContainerToNetwork(nameOrID, netName string, netOpts types.PerNetworkOptions) error {
return errors.New("not implemented (*Runtime) ConnectContainerToNetwork")
}
// getPath will join the given path to the rootless netns dir
func (r *RootlessNetNS) getPath(path string) string {
return filepath.Join(r.dir, path)
}
// Do - run the given function in the rootless netns.
// It does not lock the rootlessCNI lock, the caller
// should only lock when needed, e.g. for network operations.
func (r *RootlessNetNS) Do(toRun func() error) error {
return errors.New("not implemented (*RootlessNetNS) Do")
}
// Cleanup the rootless network namespace if needed.
// It checks if we have running containers with the bridge network mode.
// Cleanup() expects that r.Lock is locked
func (r *RootlessNetNS) Cleanup(runtime *Runtime) error {
return errors.New("not implemented (*RootlessNetNS) Cleanup")
}
// GetRootlessNetNs returns the rootless netns object. If create is set to true
// the rootless network namespace will be created if it does not already exist.
// If called as root it returns always nil.
// On success the returned RootlessCNI lock is locked and must be unlocked by the caller.
func (r *Runtime) GetRootlessNetNs(new bool) (*RootlessNetNS, error) {
return nil, errors.New("not implemented (*Runtime) GetRootlessNetNs")
}
// convertPortMappings will remove the HostIP part from the ports when running inside podman machine.
// This is needed because a HostIP of 127.0.0.1 would now allow the gvproxy forwarder to reach to open ports.
// For machine the HostIP must only be used by gvproxy and never in the VM.
func (c *Container) convertPortMappings() []types.PortMapping {
return []types.PortMapping{}
}

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
const (

View File

@ -1,4 +1,5 @@
//go:build linux || freebsd
//go:build !remote && (linux || freebsd)
// +build !remote
// +build linux freebsd
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,4 +1,5 @@
//go:build linux || freebsd
//go:build !remote && (linux || freebsd)
// +build !remote
// +build linux freebsd
package libpod

View File

@ -1,3 +1,7 @@
//go:build !remote && (linux || freebsd)
// +build !remote
// +build linux freebsd
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,24 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"errors"
"github.com/containers/common/pkg/config"
"github.com/containers/common/pkg/resize"
)
// Make a new Conmon-based OCI runtime with the given options.
// Conmon will wrap the given OCI runtime, which can be `runc`, `crun`, or
// any runtime with a runc-compatible CLI.
// The first path that points to a valid executable will be used.
// Deliberately private. Someone should not be able to construct this outside of
// libpod.
func newConmonOCIRuntime(name string, paths []string, conmonPath string, runtimeFlags []string, runtimeCfg *config.Config) (OCIRuntime, error) {
return nil, errors.New("newConmonOCIRuntime not supported on this platform")
}
func registerResizeFunc(r <-chan resize.TerminalSize, bundlePath string) {
}

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
func (p *Pod) platformRefresh() error {

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import "github.com/containers/podman/v4/libpod/define"

View File

@ -1,5 +1,5 @@
//go:build freebsd
// +build freebsd
//go:build !remote
// +build !remote
package libpod

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote
// +build !remote
package libpod

View File

@ -1,20 +0,0 @@
//go:build !linux && !freebsd
// +build !linux,!freebsd
package libpod
import (
"errors"
)
// GetPodPidInformation returns process-related data of all processes in
// the pod. The output data can be controlled via the `descriptors`
// argument which expects format descriptors and supports all AIXformat
// descriptors of ps (1) plus some additional ones to for instance inspect the
// set of effective capabilities. Each element in the returned string slice
// is a tab-separated string.
//
// For more details, please refer to github.com/containers/psgo.
func (p *Pod) GetPodPidInformation(descriptors []string) ([]string, error) {
return nil, errors.New("not implemented (*Pod) GetPodPidInformation")
}

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,5 +1,5 @@
//go:build freebsd
// +build freebsd
//go:build !remote && freebsd
// +build !remote,freebsd
package libpod

View File

@ -1,5 +1,5 @@
//go:build linux || darwin
// +build linux darwin
//go:build !remote && linux
// +build !remote,linux
package libpod

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
const (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
const (

View File

@ -1,3 +1,6 @@
//go:build !remote
// +build !remote
package libpod
import (

View File

@ -1,5 +1,5 @@
//go:build linux
// +build linux
//go:build !remote
// +build !remote
package libpod

View File

@ -1,5 +1,5 @@
//go:build !linux
// +build !linux
//go:build !remote && !linux
// +build !remote,!linux
package libpod

Some files were not shown because too many files have changed in this diff Show More