mirror of
https://gitea.com/Lydanne/buildx.git
synced 2025-05-29 17:05:46 +08:00
inspect: display labels and gc policies
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
parent
9753f63f57
commit
89d99b1694
@ -4,6 +4,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"text/tabwriter"
|
"text/tabwriter"
|
||||||
"time"
|
"time"
|
||||||
@ -12,6 +13,7 @@ import (
|
|||||||
"github.com/docker/buildx/util/platformutil"
|
"github.com/docker/buildx/util/platformutil"
|
||||||
"github.com/docker/cli/cli"
|
"github.com/docker/cli/cli"
|
||||||
"github.com/docker/cli/cli/command"
|
"github.com/docker/cli/cli/command"
|
||||||
|
"github.com/docker/go-units"
|
||||||
"github.com/moby/buildkit/util/appcontext"
|
"github.com/moby/buildkit/util/appcontext"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
)
|
)
|
||||||
@ -89,6 +91,26 @@ func runInspect(dockerCli command.Cli, in inspectOptions) error {
|
|||||||
fmt.Fprintf(w, "Buildkit:\t%s\n", nodes[i].Version)
|
fmt.Fprintf(w, "Buildkit:\t%s\n", nodes[i].Version)
|
||||||
}
|
}
|
||||||
fmt.Fprintf(w, "Platforms:\t%s\n", strings.Join(platformutil.FormatInGroups(n.Node.Platforms, n.Platforms), ", "))
|
fmt.Fprintf(w, "Platforms:\t%s\n", strings.Join(platformutil.FormatInGroups(n.Node.Platforms, n.Platforms), ", "))
|
||||||
|
if len(nodes[i].Labels) > 0 {
|
||||||
|
fmt.Fprintf(w, "Labels:\n")
|
||||||
|
for _, k := range sortedKeys(nodes[i].Labels) {
|
||||||
|
v := nodes[i].Labels[k]
|
||||||
|
fmt.Fprintf(w, "\t%s:\t%s\n", k, v)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for ri, rule := range nodes[i].GCPolicy {
|
||||||
|
fmt.Fprintf(w, "GC Policy rule#%d:\n", ri)
|
||||||
|
fmt.Fprintf(w, "\tAll:\t%v\n", rule.All)
|
||||||
|
if len(rule.Filter) > 0 {
|
||||||
|
fmt.Fprintf(w, "\tFilters:\t%s\n", strings.Join(rule.Filter, " "))
|
||||||
|
}
|
||||||
|
if rule.KeepDuration > 0 {
|
||||||
|
fmt.Fprintf(w, "\tKeep Duration:\t%v\n", rule.KeepDuration.String())
|
||||||
|
}
|
||||||
|
if rule.KeepBytes > 0 {
|
||||||
|
fmt.Fprintf(w, "\tKeep Bytes:\t%s\n", units.BytesSize(float64(rule.KeepBytes)))
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -119,3 +141,14 @@ func inspectCmd(dockerCli command.Cli, rootOpts *rootOptions) *cobra.Command {
|
|||||||
|
|
||||||
return cmd
|
return cmd
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func sortedKeys(m map[string]string) []string {
|
||||||
|
s := make([]string, len(m))
|
||||||
|
i := 0
|
||||||
|
for k := range m {
|
||||||
|
s[i] = k
|
||||||
|
i++
|
||||||
|
}
|
||||||
|
sort.Strings(s)
|
||||||
|
return s
|
||||||
|
}
|
||||||
|
@ -49,20 +49,38 @@ The following example shows information about a builder instance named
|
|||||||
|
|
||||||
```console
|
```console
|
||||||
$ docker buildx inspect elated_tesla
|
$ docker buildx inspect elated_tesla
|
||||||
|
Name: elated_tesla
|
||||||
Name: elated_tesla
|
Driver: docker-container
|
||||||
Driver: docker-container
|
Last Activity: 2022-11-30 12:42:47 +0100 CET
|
||||||
|
|
||||||
Nodes:
|
Nodes:
|
||||||
Name: elated_tesla0
|
Name: elated_tesla0
|
||||||
Endpoint: unix:///var/run/docker.sock
|
Endpoint: unix:///var/run/docker.sock
|
||||||
Status: running
|
Driver Options: env.BUILDKIT_STEP_LOG_MAX_SPEED="10485760" env.JAEGER_TRACE="localhost:6831" image="moby/buildkit:latest" network="host" env.BUILDKIT_STEP_LOG_MAX_SIZE="10485760"
|
||||||
Buildkit: v0.10.3
|
Status: running
|
||||||
Platforms: linux/amd64
|
Flags: --debug --allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host
|
||||||
|
BuildKit: v0.10.6
|
||||||
Name: elated_tesla1
|
Platforms: linux/arm64*, linux/arm/v7, linux/arm/v6
|
||||||
Endpoint: ssh://ubuntu@1.2.3.4
|
Labels:
|
||||||
Status: running
|
org.mobyproject.buildkit.worker.executor: oci
|
||||||
Buildkit: v0.10.3
|
org.mobyproject.buildkit.worker.hostname: docker-desktop
|
||||||
Platforms: linux/arm64*, linux/arm/v7, linux/arm/v6
|
org.mobyproject.buildkit.worker.network: host
|
||||||
|
org.mobyproject.buildkit.worker.oci.process-mode: sandbox
|
||||||
|
org.mobyproject.buildkit.worker.selinux.enabled: false
|
||||||
|
org.mobyproject.buildkit.worker.snapshotter: overlayfs
|
||||||
|
GC Policy rule#0:
|
||||||
|
All: false
|
||||||
|
Filters: type==source.local,type==exec.cachemount,type==source.git.checkout
|
||||||
|
Keep Duration: 48h0m0s
|
||||||
|
Keep Bytes: 488.3MiB
|
||||||
|
GC Policy rule#1:
|
||||||
|
All: false
|
||||||
|
Keep Duration: 1440h0m0s
|
||||||
|
Keep Bytes: 24.21GiB
|
||||||
|
GC Policy rule#2:
|
||||||
|
All: false
|
||||||
|
Keep Bytes: 24.21GiB
|
||||||
|
GC Policy rule#3:
|
||||||
|
All: true
|
||||||
|
Keep Bytes: 24.21GiB
|
||||||
```
|
```
|
||||||
|
Loading…
x
Reference in New Issue
Block a user