Merged in feature/s3integration (pull request #47)
Set Up S3 integration * cfginterfaceandfirsts3funcs * addlocalstack * generallypassesfullsuite * addedmultipleattemptedpings * cleanup * stabiliseplusskip
This commit is contained in:
+54
-29
@@ -393,7 +393,7 @@ definitions:
|
||||
Make the mount non-recursively read-only, but still leave the mount recursive
|
||||
(unless NonRecursive is set to `true` in conjunction).
|
||||
|
||||
Addded in v1.44, before that version all read-only mounts were
|
||||
Added in v1.44, before that version all read-only mounts were
|
||||
non-recursive by default. To match the previous behaviour this
|
||||
will default to `true` for clients on versions prior to v1.44.
|
||||
type: "boolean"
|
||||
@@ -1195,6 +1195,7 @@ definitions:
|
||||
- "default"
|
||||
- "process"
|
||||
- "hyperv"
|
||||
- ""
|
||||
MaskedPaths:
|
||||
type: "array"
|
||||
description: |
|
||||
@@ -1384,7 +1385,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always empty. It must not be used, and will be removed in API v1.47.
|
||||
> always empty. It must not be used, and will be removed in API v1.48.
|
||||
type: "string"
|
||||
example: ""
|
||||
Domainname:
|
||||
@@ -1394,7 +1395,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always empty. It must not be used, and will be removed in API v1.47.
|
||||
> always empty. It must not be used, and will be removed in API v1.48.
|
||||
type: "string"
|
||||
example: ""
|
||||
User:
|
||||
@@ -1408,7 +1409,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always false. It must not be used, and will be removed in API v1.47.
|
||||
> always false. It must not be used, and will be removed in API v1.48.
|
||||
type: "boolean"
|
||||
default: false
|
||||
example: false
|
||||
@@ -1419,7 +1420,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always false. It must not be used, and will be removed in API v1.47.
|
||||
> always false. It must not be used, and will be removed in API v1.48.
|
||||
type: "boolean"
|
||||
default: false
|
||||
example: false
|
||||
@@ -1430,7 +1431,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always false. It must not be used, and will be removed in API v1.47.
|
||||
> always false. It must not be used, and will be removed in API v1.48.
|
||||
type: "boolean"
|
||||
default: false
|
||||
example: false
|
||||
@@ -1457,7 +1458,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always false. It must not be used, and will be removed in API v1.47.
|
||||
> always false. It must not be used, and will be removed in API v1.48.
|
||||
type: "boolean"
|
||||
default: false
|
||||
example: false
|
||||
@@ -1468,7 +1469,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always false. It must not be used, and will be removed in API v1.47.
|
||||
> always false. It must not be used, and will be removed in API v1.48.
|
||||
type: "boolean"
|
||||
default: false
|
||||
example: false
|
||||
@@ -1479,7 +1480,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always false. It must not be used, and will be removed in API v1.47.
|
||||
> always false. It must not be used, and will be removed in API v1.48.
|
||||
type: "boolean"
|
||||
default: false
|
||||
example: false
|
||||
@@ -1516,7 +1517,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always empty. It must not be used, and will be removed in API v1.47.
|
||||
> always empty. It must not be used, and will be removed in API v1.48.
|
||||
type: "string"
|
||||
default: ""
|
||||
example: ""
|
||||
@@ -1555,7 +1556,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always omitted. It must not be used, and will be removed in API v1.47.
|
||||
> always omitted. It must not be used, and will be removed in API v1.48.
|
||||
type: "boolean"
|
||||
default: false
|
||||
example: false
|
||||
@@ -1567,7 +1568,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always omitted. It must not be used, and will be removed in API v1.47.
|
||||
> always omitted. It must not be used, and will be removed in API v1.48.
|
||||
type: "string"
|
||||
default: ""
|
||||
example: ""
|
||||
@@ -1601,7 +1602,7 @@ definitions:
|
||||
<p><br /></p>
|
||||
|
||||
> **Deprecated**: this field is not part of the image specification and is
|
||||
> always omitted. It must not be used, and will be removed in API v1.47.
|
||||
> always omitted. It must not be used, and will be removed in API v1.48.
|
||||
type: "integer"
|
||||
default: 10
|
||||
x-nullable: true
|
||||
@@ -2216,7 +2217,7 @@ definitions:
|
||||
Created:
|
||||
description: |
|
||||
Date and time at which the image was created as a Unix timestamp
|
||||
(number of seconds sinds EPOCH).
|
||||
(number of seconds since EPOCH).
|
||||
type: "integer"
|
||||
x-nullable: false
|
||||
example: "1644009612"
|
||||
@@ -2513,7 +2514,7 @@ definitions:
|
||||
example: false
|
||||
Attachable:
|
||||
description: |
|
||||
Wheter a global / swarm scope network is manually attachable by regular
|
||||
Whether a global / swarm scope network is manually attachable by regular
|
||||
containers from workers in swarm mode.
|
||||
type: "boolean"
|
||||
default: false
|
||||
@@ -3736,7 +3737,7 @@ definitions:
|
||||
example: "json-file"
|
||||
Options:
|
||||
description: |
|
||||
Driver-specific options for the selectd log driver, specified
|
||||
Driver-specific options for the selected log driver, specified
|
||||
as key/value pairs.
|
||||
type: "object"
|
||||
additionalProperties:
|
||||
@@ -4180,6 +4181,7 @@ definitions:
|
||||
- "default"
|
||||
- "process"
|
||||
- "hyperv"
|
||||
- ""
|
||||
Init:
|
||||
description: |
|
||||
Run an init inside the container that forwards signals and reaps
|
||||
@@ -5347,7 +5349,7 @@ definitions:
|
||||
The version Go used to compile the daemon, and the version of the Go
|
||||
runtime in use.
|
||||
type: "string"
|
||||
example: "go1.21.13"
|
||||
example: "go1.22.7"
|
||||
Os:
|
||||
description: |
|
||||
The operating system that the daemon is running on ("linux" or "windows")
|
||||
@@ -5750,6 +5752,7 @@ definitions:
|
||||
- "default"
|
||||
- "hyperv"
|
||||
- "process"
|
||||
- ""
|
||||
InitBinary:
|
||||
description: |
|
||||
Name and, optional, path of the `docker-init` binary.
|
||||
@@ -5820,8 +5823,6 @@ definitions:
|
||||
type: "string"
|
||||
example:
|
||||
- "WARNING: No memory limit support"
|
||||
- "WARNING: bridge-nf-call-iptables is disabled"
|
||||
- "WARNING: bridge-nf-call-ip6tables is disabled"
|
||||
CDISpecDirs:
|
||||
description: |
|
||||
List of directories where (Container Device Interface) CDI
|
||||
@@ -7712,7 +7713,7 @@ paths:
|
||||
* Memory usage % = `(used_memory / available_memory) * 100.0`
|
||||
* cpu_delta = `cpu_stats.cpu_usage.total_usage - precpu_stats.cpu_usage.total_usage`
|
||||
* system_cpu_delta = `cpu_stats.system_cpu_usage - precpu_stats.system_cpu_usage`
|
||||
* number_cpus = `lenght(cpu_stats.cpu_usage.percpu_usage)` or `cpu_stats.online_cpus`
|
||||
* number_cpus = `length(cpu_stats.cpu_usage.percpu_usage)` or `cpu_stats.online_cpus`
|
||||
* CPU usage % = `(cpu_delta / system_cpu_delta) * number_cpus * 100.0`
|
||||
operationId: "ContainerStats"
|
||||
produces: ["application/json"]
|
||||
@@ -7876,10 +7877,12 @@ paths:
|
||||
type: "string"
|
||||
- name: "h"
|
||||
in: "query"
|
||||
required: true
|
||||
description: "Height of the TTY session in characters"
|
||||
type: "integer"
|
||||
- name: "w"
|
||||
in: "query"
|
||||
required: true
|
||||
description: "Width of the TTY session in characters"
|
||||
type: "integer"
|
||||
tags: ["Container"]
|
||||
@@ -9226,13 +9229,37 @@ paths:
|
||||
parameters:
|
||||
- name: "name"
|
||||
in: "path"
|
||||
description: "Image name or ID."
|
||||
description: |
|
||||
Name of the image to push. For example, `registry.example.com/myimage`.
|
||||
The image must be present in the local image store with the same name.
|
||||
|
||||
The name should be provided without tag; if a tag is provided, it
|
||||
is ignored. For example, `registry.example.com/myimage:latest` is
|
||||
considered equivalent to `registry.example.com/myimage`.
|
||||
|
||||
Use the `tag` parameter to specify the tag to push.
|
||||
type: "string"
|
||||
required: true
|
||||
- name: "tag"
|
||||
in: "query"
|
||||
description: "The tag to associate with the image on the registry."
|
||||
description: |
|
||||
Tag of the image to push. For example, `latest`. If no tag is provided,
|
||||
all tags of the given image that are present in the local image store
|
||||
are pushed.
|
||||
type: "string"
|
||||
- name: "platform"
|
||||
type: "string"
|
||||
in: "query"
|
||||
description: |
|
||||
JSON-encoded OCI platform to select the platform-variant to push.
|
||||
If not provided, all available variants will attempt to be pushed.
|
||||
|
||||
If the daemon provides a multi-platform image store, this selects
|
||||
the platform-variant to push to the registry. If the image is
|
||||
a single-platform image, or if the multi-platform image does not
|
||||
provide a variant matching the given platform, an error is returned.
|
||||
|
||||
Example: `{"os": "linux", "architecture": "arm", "variant": "v5"}`
|
||||
- name: "X-Registry-Auth"
|
||||
in: "header"
|
||||
description: |
|
||||
@@ -9242,11 +9269,6 @@ paths:
|
||||
details.
|
||||
type: "string"
|
||||
required: true
|
||||
- name: "platform"
|
||||
in: "query"
|
||||
description: "Select a platform-specific manifest to be pushed. OCI platform (JSON encoded)"
|
||||
type: "string"
|
||||
x-nullable: true
|
||||
tags: ["Image"]
|
||||
/images/{name}/tag:
|
||||
post:
|
||||
@@ -9542,7 +9564,7 @@ paths:
|
||||
type: "string"
|
||||
example: "OK"
|
||||
headers:
|
||||
API-Version:
|
||||
Api-Version:
|
||||
type: "string"
|
||||
description: "Max API Version the server supports"
|
||||
Builder-Version:
|
||||
@@ -9598,7 +9620,7 @@ paths:
|
||||
type: "string"
|
||||
example: "(empty)"
|
||||
headers:
|
||||
API-Version:
|
||||
Api-Version:
|
||||
type: "string"
|
||||
description: "Max API Version the server supports"
|
||||
Builder-Version:
|
||||
@@ -10192,10 +10214,12 @@ paths:
|
||||
type: "string"
|
||||
- name: "h"
|
||||
in: "query"
|
||||
required: true
|
||||
description: "Height of the TTY session in characters"
|
||||
type: "integer"
|
||||
- name: "w"
|
||||
in: "query"
|
||||
required: true
|
||||
description: "Width of the TTY session in characters"
|
||||
type: "integer"
|
||||
tags: ["Exec"]
|
||||
@@ -11611,6 +11635,7 @@ paths:
|
||||
example:
|
||||
ListenAddr: "0.0.0.0:2377"
|
||||
AdvertiseAddr: "192.168.1.1:2377"
|
||||
DataPathAddr: "192.168.1.1"
|
||||
RemoteAddrs:
|
||||
- "node1:2377"
|
||||
JoinToken: "SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-7p73s1dx5in4tatdymyhg9hu2"
|
||||
|
||||
+4
-3
@@ -1,6 +1,7 @@
|
||||
package container // import "github.com/docker/docker/api/types/container"
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
@@ -9,7 +10,7 @@ import (
|
||||
"github.com/docker/docker/api/types/network"
|
||||
"github.com/docker/docker/api/types/strslice"
|
||||
"github.com/docker/go-connections/nat"
|
||||
units "github.com/docker/go-units"
|
||||
"github.com/docker/go-units"
|
||||
)
|
||||
|
||||
// CgroupnsMode represents the cgroup namespace mode of the container
|
||||
@@ -325,12 +326,12 @@ func ValidateRestartPolicy(policy RestartPolicy) error {
|
||||
if policy.MaximumRetryCount < 0 {
|
||||
msg += " and cannot be negative"
|
||||
}
|
||||
return &errInvalidParameter{fmt.Errorf(msg)}
|
||||
return &errInvalidParameter{errors.New(msg)}
|
||||
}
|
||||
return nil
|
||||
case RestartPolicyOnFailure:
|
||||
if policy.MaximumRetryCount < 0 {
|
||||
return &errInvalidParameter{fmt.Errorf("invalid restart policy: maximum retry count cannot be negative")}
|
||||
return &errInvalidParameter{errors.New("invalid restart policy: maximum retry count cannot be negative")}
|
||||
}
|
||||
return nil
|
||||
case "":
|
||||
|
||||
+1
-1
@@ -196,7 +196,7 @@ func (args Args) Match(field, source string) bool {
|
||||
}
|
||||
|
||||
// GetBoolOrDefault returns a boolean value of the key if the key is present
|
||||
// and is intepretable as a boolean value. Otherwise the default value is returned.
|
||||
// and is interpretable as a boolean value. Otherwise the default value is returned.
|
||||
// Error is not nil only if the filter values are not valid boolean or are conflicting.
|
||||
func (args Args) GetBoolOrDefault(key string, defaultValue bool) (bool, error) {
|
||||
fieldValues, ok := args.fields[key]
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ type Summary struct {
|
||||
Containers int64 `json:"Containers"`
|
||||
|
||||
// Date and time at which the image was created as a Unix timestamp
|
||||
// (number of seconds sinds EPOCH).
|
||||
// (number of seconds since EPOCH).
|
||||
//
|
||||
// Required: true
|
||||
Created int64 `json:"Created"`
|
||||
|
||||
+1
-1
@@ -122,7 +122,7 @@ type CAConfig struct {
|
||||
SigningCAKey string `json:",omitempty"`
|
||||
|
||||
// If this value changes, and there is no specified signing cert and key,
|
||||
// then the swarm is forced to generate a new root certificate ane key.
|
||||
// then the swarm is forced to generate a new root certificate and key.
|
||||
ForceRotate uint64 `json:",omitempty"`
|
||||
}
|
||||
|
||||
|
||||
+2
@@ -484,4 +484,6 @@ type BuildCachePruneOptions struct {
|
||||
All bool
|
||||
KeepStorage int64
|
||||
Filters filters.Args
|
||||
|
||||
// FIXME(thaJeztah): add new options; see https://github.com/moby/moby/issues/48639
|
||||
}
|
||||
|
||||
+1
-1
@@ -414,7 +414,7 @@ type Info struct {
|
||||
// the Volume has not been successfully created yet.
|
||||
VolumeID string `json:",omitempty"`
|
||||
|
||||
// AccessibleTopolgoy is the topology this volume is actually accessible
|
||||
// AccessibleTopology is the topology this volume is actually accessible
|
||||
// from.
|
||||
AccessibleTopology []Topology `json:",omitempty"`
|
||||
}
|
||||
|
||||
+9
-1
@@ -2,7 +2,7 @@
|
||||
Package client is a Go client for the Docker Engine API.
|
||||
|
||||
For more information about the Engine API, see the documentation:
|
||||
https://docs.docker.com/engine/api/
|
||||
https://docs.docker.com/reference/api/engine/
|
||||
|
||||
# Usage
|
||||
|
||||
@@ -247,6 +247,14 @@ func (cli *Client) tlsConfig() *tls.Config {
|
||||
|
||||
func defaultHTTPClient(hostURL *url.URL) (*http.Client, error) {
|
||||
transport := &http.Transport{}
|
||||
// Necessary to prevent long-lived processes using the
|
||||
// client from leaking connections due to idle connections
|
||||
// not being released.
|
||||
// TODO: see if we can also address this from the server side,
|
||||
// or in go-connections.
|
||||
// see: https://github.com/moby/moby/issues/45539
|
||||
transport.MaxIdleConns = 6
|
||||
transport.IdleConnTimeout = 30 * time.Second
|
||||
err := sockets.ConfigureTransport(transport, hostURL.Scheme, hostURL.Host)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
||||
+2
-2
@@ -56,8 +56,8 @@ func parsePingResponse(cli *Client, resp serverResponse) (types.Ping, error) {
|
||||
err := cli.checkResponseErr(resp)
|
||||
return ping, errdefs.FromStatusCode(err, resp.statusCode)
|
||||
}
|
||||
ping.APIVersion = resp.header.Get("API-Version")
|
||||
ping.OSType = resp.header.Get("OSType")
|
||||
ping.APIVersion = resp.header.Get("Api-Version")
|
||||
ping.OSType = resp.header.Get("Ostype")
|
||||
if resp.header.Get("Docker-Experimental") == "true" {
|
||||
ping.Experimental = true
|
||||
}
|
||||
|
||||
+6
@@ -18,6 +18,8 @@ const blockThreshold = 1e6
|
||||
|
||||
var (
|
||||
// ErrClosed is returned when Write is called on a closed BytesPipe.
|
||||
//
|
||||
// Deprecated: this type is only used internally, and will be removed in the next release.
|
||||
ErrClosed = errors.New("write to closed BytesPipe")
|
||||
|
||||
bufPools = make(map[int]*sync.Pool)
|
||||
@@ -28,6 +30,8 @@ var (
|
||||
// All written data may be read at most once. Also, BytesPipe allocates
|
||||
// and releases new byte slices to adjust to current needs, so the buffer
|
||||
// won't be overgrown after peak loads.
|
||||
//
|
||||
// Deprecated: this type is only used internally, and will be removed in the next release.
|
||||
type BytesPipe struct {
|
||||
mu sync.Mutex
|
||||
wait *sync.Cond
|
||||
@@ -40,6 +44,8 @@ type BytesPipe struct {
|
||||
// NewBytesPipe creates new BytesPipe, initialized by specified slice.
|
||||
// If buf is nil, then it will be initialized with slice which cap is 64.
|
||||
// buf will be adjusted in a way that len(buf) == 0, cap(buf) == cap(buf).
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func NewBytesPipe() *BytesPipe {
|
||||
bp := &BytesPipe{}
|
||||
bp.buf = append(bp.buf, getBuffer(minCap))
|
||||
|
||||
+7
-1
@@ -80,13 +80,19 @@ func (wf *WriteFlusher) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// nopFlusher represents a type which flush operation is nop.
|
||||
type nopFlusher struct{}
|
||||
|
||||
// Flush is a nop operation.
|
||||
func (f *nopFlusher) Flush() {}
|
||||
|
||||
// NewWriteFlusher returns a new WriteFlusher.
|
||||
func NewWriteFlusher(w io.Writer) *WriteFlusher {
|
||||
var fl flusher
|
||||
if f, ok := w.(flusher); ok {
|
||||
fl = f
|
||||
} else {
|
||||
fl = &NopFlusher{}
|
||||
fl = &nopFlusher{}
|
||||
}
|
||||
return &WriteFlusher{w: w, flusher: fl, closed: make(chan struct{}), flushed: make(chan struct{})}
|
||||
}
|
||||
|
||||
+11
-4
@@ -6,6 +6,8 @@ import (
|
||||
)
|
||||
|
||||
// NopWriter represents a type which write operation is nop.
|
||||
//
|
||||
// Deprecated: use [io.Discard] instead. This type will be removed in the next release.
|
||||
type NopWriter struct{}
|
||||
|
||||
func (*NopWriter) Write(buf []byte) (int, error) {
|
||||
@@ -19,15 +21,16 @@ type nopWriteCloser struct {
|
||||
func (w *nopWriteCloser) Close() error { return nil }
|
||||
|
||||
// NopWriteCloser returns a nopWriteCloser.
|
||||
//
|
||||
// Deprecated: This function is no longer used and will be removed in the next release.
|
||||
func NopWriteCloser(w io.Writer) io.WriteCloser {
|
||||
return &nopWriteCloser{w}
|
||||
}
|
||||
|
||||
// NopFlusher represents a type which flush operation is nop.
|
||||
type NopFlusher struct{}
|
||||
|
||||
// Flush is a nop operation.
|
||||
func (f *NopFlusher) Flush() {}
|
||||
//
|
||||
// Deprecated: NopFlusher is only used internally and will be removed in the next release.
|
||||
type NopFlusher = nopFlusher
|
||||
|
||||
type writeCloserWrapper struct {
|
||||
io.Writer
|
||||
@@ -55,12 +58,16 @@ func NewWriteCloserWrapper(r io.Writer, closer func() error) io.WriteCloser {
|
||||
// of bytes written to the writer during a "session".
|
||||
// This can be convenient when write return is masked
|
||||
// (e.g., json.Encoder.Encode())
|
||||
//
|
||||
// Deprecated: this type is no longer used and will be removed in the next release.
|
||||
type WriteCounter struct {
|
||||
Count int64
|
||||
Writer io.Writer
|
||||
}
|
||||
|
||||
// NewWriteCounter returns a new WriteCounter.
|
||||
//
|
||||
// Deprecated: this function is no longer used and will be removed in the next release.
|
||||
func NewWriteCounter(w io.Writer) *WriteCounter {
|
||||
return &WriteCounter{
|
||||
Writer: w,
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
units "github.com/docker/go-units"
|
||||
"github.com/docker/go-units"
|
||||
"github.com/moby/term"
|
||||
"github.com/morikuni/aec"
|
||||
)
|
||||
@@ -290,7 +290,7 @@ func DisplayJSONMessagesStream(in io.Reader, out io.Writer, terminalFd uintptr,
|
||||
}
|
||||
|
||||
// Stream is an io.Writer for output with utilities to get the output's file
|
||||
// descriptor and to detect wether it's a terminal.
|
||||
// descriptor and to detect whether it's a terminal.
|
||||
//
|
||||
// it is subset of the streams.Out type in
|
||||
// https://pkg.go.dev/github.com/docker/cli@v20.10.17+incompatible/cli/streams#Out
|
||||
|
||||
+1
-1
@@ -124,7 +124,7 @@ func (bufPool *BufioWriterPool) Put(b *bufio.Writer) {
|
||||
}
|
||||
|
||||
// NewWriteCloserWrapper returns a wrapper which puts the bufio.Writer back
|
||||
// into the pool and closes the writer if it's an io.Writecloser.
|
||||
// into the pool and closes the writer if it's an io.WriteCloser.
|
||||
func (bufPool *BufioWriterPool) NewWriteCloserWrapper(buf *bufio.Writer, w io.Writer) io.WriteCloser {
|
||||
return ioutils.NewWriteCloserWrapper(w, func() error {
|
||||
buf.Flush()
|
||||
|
||||
+3
-1
@@ -10,7 +10,9 @@ import (
|
||||
// Lstat takes a path to a file and returns
|
||||
// a system.StatT type pertaining to that file.
|
||||
//
|
||||
// Throws an error if the file does not exist
|
||||
// Throws an error if the file does not exist.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func Lstat(path string) (*StatT, error) {
|
||||
s := &syscall.Stat_t{}
|
||||
if err := syscall.Lstat(path, s); err != nil {
|
||||
|
||||
+2
@@ -4,6 +4,8 @@ import "os"
|
||||
|
||||
// Lstat calls os.Lstat to get a fileinfo interface back.
|
||||
// This is then copied into our own locally defined structure.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func Lstat(path string) (*StatT, error) {
|
||||
fi, err := os.Lstat(path)
|
||||
if err != nil {
|
||||
|
||||
+2
@@ -11,6 +11,8 @@ import (
|
||||
// Linux device nodes are a bit weird due to backwards compat with 16 bit device nodes.
|
||||
// They are, from low to high: the lower 8 bits of the minor, then 12 bits of the major,
|
||||
// then the top 12 bits of the minor.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func Mkdev(major int64, minor int64) uint32 {
|
||||
return uint32(unix.Mkdev(uint32(major), uint32(minor)))
|
||||
}
|
||||
|
||||
+2
@@ -8,6 +8,8 @@ import (
|
||||
|
||||
// Mknod creates a filesystem node (file, device special file or named pipe) named path
|
||||
// with attributes specified by mode and dev.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func Mknod(path string, mode uint32, dev int) error {
|
||||
return unix.Mknod(path, mode, uint64(dev))
|
||||
}
|
||||
|
||||
+2
@@ -8,6 +8,8 @@ import (
|
||||
|
||||
// Mknod creates a filesystem node (file, device special file or named pipe) named path
|
||||
// with attributes specified by mode and dev.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func Mknod(path string, mode uint32, dev int) error {
|
||||
return unix.Mknod(path, mode, dev)
|
||||
}
|
||||
|
||||
+2
@@ -17,6 +17,8 @@ func fromStatT(s *syscall.Stat_t) (*StatT, error) {
|
||||
|
||||
// FromStatT converts a syscall.Stat_t type to a system.Stat_t type
|
||||
// This is exposed on Linux as pkg/archive/changes uses it.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func FromStatT(s *syscall.Stat_t) (*StatT, error) {
|
||||
return fromStatT(s)
|
||||
}
|
||||
|
||||
+5
-1
@@ -9,6 +9,8 @@ import (
|
||||
|
||||
// StatT type contains status of a file. It contains metadata
|
||||
// like permission, owner, group, size, etc about a file.
|
||||
//
|
||||
// Deprecated: this type is only used internally, and will be removed in the next release.
|
||||
type StatT struct {
|
||||
mode uint32
|
||||
uid uint32
|
||||
@@ -56,7 +58,9 @@ func (s StatT) IsDir() bool {
|
||||
// Stat takes a path to a file and returns
|
||||
// a system.StatT type pertaining to that file.
|
||||
//
|
||||
// Throws an error if the file does not exist
|
||||
// Throws an error if the file does not exist.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func Stat(path string) (*StatT, error) {
|
||||
s := &syscall.Stat_t{}
|
||||
if err := syscall.Stat(path, s); err != nil {
|
||||
|
||||
+5
-1
@@ -7,6 +7,8 @@ import (
|
||||
|
||||
// StatT type contains status of a file. It contains metadata
|
||||
// like permission, size, etc about a file.
|
||||
//
|
||||
// Deprecated: this type is only used internally, and will be removed in the next release.
|
||||
type StatT struct {
|
||||
mode os.FileMode
|
||||
size int64
|
||||
@@ -31,7 +33,9 @@ func (s StatT) Mtim() time.Time {
|
||||
// Stat takes a path to a file and returns
|
||||
// a system.StatT type pertaining to that file.
|
||||
//
|
||||
// Throws an error if the file does not exist
|
||||
// Throws an error if the file does not exist.
|
||||
//
|
||||
// Deprecated: this function is only used internally, and will be removed in the next release.
|
||||
func Stat(path string) (*StatT, error) {
|
||||
fi, err := os.Stat(path)
|
||||
if err != nil {
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ import (
|
||||
|
||||
// Lgetxattr retrieves the value of the extended attribute identified by attr
|
||||
// and associated with the given path in the file system.
|
||||
// It will returns a nil slice and nil error if the xattr is not set.
|
||||
// It returns a nil slice and nil error if the xattr is not set.
|
||||
func Lgetxattr(path string, attr string) ([]byte, error) {
|
||||
sysErr := func(err error) ([]byte, error) {
|
||||
return nil, &XattrError{Op: "lgetxattr", Attr: attr, Path: path, Err: err}
|
||||
|
||||
Reference in New Issue
Block a user