Merge branch 'master' of https://github.com/kubernetes/minikube into master_srikrishnabh

pull/12084/head
srikrishnabh93@gmail.com 2021-11-07 00:26:40 +05:30
commit c80793cd5d
99 changed files with 1700 additions and 642 deletions

36
.github/workflows/sync-minikube.yml vendored Normal file
View File

@ -0,0 +1,36 @@
name: Sync docker images of minikube to Alibaba Cloud
on:
workflow_dispatch:
schedule:
# every day at 7am & 7pm pacific
- cron: "0 2,14 * * *"
jobs:
sync-images:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./image-syncer
steps:
- uses: actions/checkout@v2
with:
repository: denverdino/image-syncer
path: ./image-syncer
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.17
- name: Build
run: make
- name: Synchronize images to Alibaba Cloud Container Registry Service
env:
ACR_USER: ${{ secrets.ALIBABA_CLOUD_ACR_USER }}
ACR_PASSWORD: ${{ secrets.ALIBABA_CLOUD_ACR_PASSWORD }}
DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }}
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
run: ./image-syncer --auth=auth.json --images=images.json --days=2 --proc=2

View File

@ -1,5 +1,131 @@
# Release Notes
## Version 1.24.0 - 2021-11-04
Features:
* Add --no-kubernetes flag to start minikube without kubernetes [#12848](https://github.com/kubernetes/minikube/pull/12848)
* `minikube addons list` shows addons if cluster does not exist [#12837](https://github.com/kubernetes/minikube/pull/12837)
Bug fixes:
* virtualbox: change default `host-only-cidr` [#12811](https://github.com/kubernetes/minikube/pull/12811)
* fix zsh completion [#12841](https://github.com/kubernetes/minikube/pull/12841)
* Fix starting on Windows with VMware driver on non `C:` drive [#12819](https://github.com/kubernetes/minikube/pull/12819)
For a more detailed changelog, including changes occuring in pre-release versions, see [CHANGELOG.md](https://github.com/kubernetes/minikube/blob/master/CHANGELOG.md).
Thank you to our contributors for this release!
- Akira Yoshiyama
- Keyhoh
- Medya Ghazizadeh
- Nicolas Busseneau
- Sharif Elgamal
- Steven Powell
- Toshiaki Inukai
Thank you to our PR reviewers for this release!
- spowelljr (11 comments)
- sharifelgamal (10 comments)
- afbjorklund (6 comments)
- atoato88 (5 comments)
- medyagh (3 comments)
- yosshy (1 comments)
Thank you to our triage members for this release!
- sharifelgamal (13 comments)
- afbjorklund (9 comments)
- spowelljr (6 comments)
- medyagh (3 comments)
- Sarathgiggso (2 comments)
## Version 1.24.0-beta.0 - 2021-10-28
Features:
* Allow running podman as experimental driver in Windows & macOS [#12579](https://github.com/kubernetes/minikube/pull/12579)
* Add Aliyun (China) mirror for preload images and K8s release binaries [#12578](https://github.com/kubernetes/minikube/pull/12578)
Minor Improvements:
* certs: Renew minikube certs if expired [#12534](https://github.com/kubernetes/minikube/pull/12534)
* mount: Persist mount settings after stop start [#12719](https://github.com/kubernetes/minikube/pull/12719)
* cri-o: Implement --force-systemd into cri-o [#12553](https://github.com/kubernetes/minikube/pull/12553)
* tunnel: Use new bridge interface name on OSX Monterey [#12799](https://github.com/kubernetes/minikube/pull/12799)
* Added port validation [#12233](https://github.com/kubernetes/minikube/pull/12233)
* buildkit: Start the daemon on demand (socket-activated) [#12081](https://github.com/kubernetes/minikube/pull/12081)
Bug Fixes:
* ingress: Restore ingress & ingress-dns backwards compatibility for k8s < v1.19 [#12794](https://github.com/kubernetes/minikube/pull/12794)
* gcp-auth: Fix disabling addon [#12779](https://github.com/kubernetes/minikube/pull/12779)
* podman: Fix network inspect index check [#12756](https://github.com/kubernetes/minikube/pull/12756)
* cilium: Fix Ipv4 cidr [#12587](https://github.com/kubernetes/minikube/pull/12587)
* mount: Fix mounting on non-default profile [#12711](https://github.com/kubernetes/minikube/pull/12711)
* podman: Match the lower case of the podman error message [#12685](https://github.com/kubernetes/minikube/pull/12685)
* ssh: Fix using tilde in ssh-key path [#12672](https://github.com/kubernetes/minikube/pull/12672)
* podman: Fix network not getting deleted [#12627](https://github.com/kubernetes/minikube/pull/12627)
* zsh: Fix completion [#12420](https://github.com/kubernetes/minikube/pull/12420)
* windows wsl2: Fix invoking kubeadm failing when spaces in PATH for none driver [#12617](https://github.com/kubernetes/minikube/pull/12617)
* image build: Only build on control plane by default [#12149](https://github.com/kubernetes/minikube/pull/12149)
* mount: Fix `minikube stop` on Windows VMs taking 9 minutes when mounted [#12716](https://github.com/kubernetes/minikube/pull/12716)
Version Upgrades:
* ingres controller: Update to v1/1.0.4 and v1beta1/0.49.3 [#12702](https://github.com/kubernetes/minikube/pull/12702)
* minikube-ingress-dns: Update image to 0.0.2 [#12730](https://github.com/kubernetes/minikube/pull/12730)
* helm-tiller: Update image to v2.17.0 [#12641](https://github.com/kubernetes/minikube/pull/12641)
For a more detailed changelog, including changes occuring in pre-release versions, see [CHANGELOG.md](https://github.com/kubernetes/minikube/blob/master/CHANGELOG.md).
Thank you to our contributors for this release!
- Akira Yoshiyama
- Alexandre Garnier
- Anders F Björklund
- Aniruddha Amit Dutta
- Avinash Upadhyaya
- Cameron Brunner
- Carlos Santana
- Claudiu Belu
- Gio Gutierrez
- Jeff MAURY
- KallyDev
- Keyhoh
- Kumar Shivendu
- Li Yi
- Marc Velasco
- Marcus Watkins
- Medya Ghazizadeh
- Michael Cade
- Pablo Caderno
- Peixuan Ding
- Piotr Resztak
- Predrag Rogic
- RA489
- Sharif Elgamal
- Steven Powell
- Taylor Steil
- Wei Luo
- phbits
- yxxhero
Thank you to our PR reviewers for this release!
- spowelljr (27 comments)
- medyagh (22 comments)
- t-inu (20 comments)
- sharifelgamal (9 comments)
- atoato88 (6 comments)
- rikatz (5 comments)
- YuikoTakada (1 comments)
- tstromberg (1 comments)
Thank you to our triage members for this release!
- spowelljr (37 comments)
- afbjorklund (34 comments)
- RA489 (30 comments)
- medyagh (29 comments)
- sharifelgamal (29 comments)
## Version 1.23.2 - 2021-09-21
Fix crio regression:

View File

@ -14,8 +14,8 @@
# Bump these on release - and please check ISO_VERSION for correctness.
VERSION_MAJOR ?= 1
VERSION_MINOR ?= 23
VERSION_BUILD ?= 2
VERSION_MINOR ?= 24
VERSION_BUILD ?= 0
RAW_VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_BUILD)
VERSION ?= v$(RAW_VERSION)
@ -23,7 +23,7 @@ KUBERNETES_VERSION ?= $(shell egrep "DefaultKubernetesVersion =" pkg/minikube/co
KIC_VERSION ?= $(shell egrep "Version =" pkg/drivers/kic/types.go | cut -d \" -f2)
# Default to .0 for higher cache hit rates, as build increments typically don't require new ISO versions
ISO_VERSION ?= v1.23.1-1633115168-12081
ISO_VERSION ?= v1.24.0
# Dashes are valid in semver, but not Linux packaging. Use ~ to delimit alpha/beta
DEB_VERSION ?= $(subst -,~,$(RAW_VERSION))
DEB_REVISION ?= 0

View File

@ -273,6 +273,7 @@ __minikube_convert_bash_to_zsh() {
-e "s/${LWORD}compopt${RWORD}/__minikube_compopt/g" \
-e "s/${LWORD}declare${RWORD}/__minikube_declare/g" \
-e "s/\\\$(type${RWORD}/\$(__minikube_type/g" \
-e "s/aliashash\[\"\([a-z]*\)\"\]/aliashash[\1]/g" \
<<'BASH_COMPLETION_EOF'
`
@ -292,7 +293,7 @@ __minikube_convert_bash_to_zsh() {
}
buf := new(bytes.Buffer)
err = cmd.GenZshCompletion(buf)
err = cmd.GenBashCompletion(buf)
if err != nil {
return errors.Wrap(err, "Error generating zsh completion")
}

View File

@ -52,7 +52,10 @@ var addonsListCmd = &cobra.Command{
exit.Message(reason.Usage, "usage: minikube addons list")
}
_, cc := mustload.Partial(ClusterFlagValue())
var cc *config.ClusterConfig
if config.ProfileExists(ClusterFlagValue()) {
_, cc = mustload.Partial(ClusterFlagValue())
}
switch strings.ToLower(addonListOutput) {
case "list":
printAddonsList(cc)
@ -98,18 +101,26 @@ var printAddonsList = func(cc *config.ClusterConfig) {
var tData [][]string
table := tablewriter.NewWriter(os.Stdout)
table.SetHeader([]string{"Addon Name", "Profile", "Status", "Maintainer"})
table.SetAutoFormatHeaders(true)
table.SetBorders(tablewriter.Border{Left: true, Top: true, Right: true, Bottom: true})
table.SetCenterSeparator("|")
if cc == nil {
table.SetHeader([]string{"Addon Name", "Maintainer"})
} else {
table.SetHeader([]string{"Addon Name", "Profile", "Status", "Maintainer"})
}
for _, addonName := range addonNames {
addonBundle := assets.Addons[addonName]
enabled := addonBundle.IsEnabled(cc)
maintainer := addonBundle.Maintainer
if maintainer == "" {
maintainer = "unknown (third-party)"
}
if cc == nil {
tData = append(tData, []string{addonName, maintainer})
continue
}
enabled := addonBundle.IsEnabled(cc)
tData = append(tData, []string{addonName, cc.Name, fmt.Sprintf("%s %s", stringFromStatus(enabled), iconFromStatus(enabled)), maintainer})
}
@ -135,6 +146,11 @@ var printAddonsJSON = func(cc *config.ClusterConfig) {
addonsMap := map[string]map[string]interface{}{}
for _, addonName := range addonNames {
if cc == nil {
addonsMap[addonName] = map[string]interface{}{}
continue
}
addonBundle := assets.Addons[addonName]
enabled := addonBundle.IsEnabled(cc)

View File

@ -0,0 +1,85 @@
/*
Copyright 2021 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package config
import (
"encoding/json"
"os"
"testing"
"k8s.io/minikube/pkg/minikube/out"
)
func TestAddonsList(t *testing.T) {
t.Run("NonExistingClusterTable", func(t *testing.T) {
b := make([]byte, 167)
r, w, err := os.Pipe()
if err != nil {
t.Fatalf("failed to create pipe: %v", err)
}
old := os.Stdout
defer func() { os.Stdout = old }()
os.Stdout = w
printAddonsList(nil)
if err := w.Close(); err != nil {
t.Fatalf("failed to close pipe: %v", err)
}
if _, err := r.Read(b); err != nil {
t.Fatalf("failed to read bytes: %v", err)
}
got := string(b)
expected := `|-----------------------------|-----------------------|
| ADDON NAME | MAINTAINER |
|-----------------------------|-----------------------|`
if got != expected {
t.Errorf("Expected header to be: %q; got = %q", expected, got)
}
})
t.Run("NonExistingClusterJSON", func(t *testing.T) {
type addons struct {
Ambassador *interface{} `json:"ambassador"`
}
b := make([]byte, 534)
r, w, err := os.Pipe()
if err != nil {
t.Fatalf("failed to create pipe: %v", err)
}
old := os.Stdout
defer func() {
os.Stdout = old
out.SetOutFile(os.Stdout)
}()
os.Stdout = w
out.SetOutFile(os.Stdout)
printAddonsJSON(nil)
if err := w.Close(); err != nil {
t.Fatalf("failed to close pipe: %v", err)
}
if _, err := r.Read(b); err != nil {
t.Fatalf("failed to read bytes: %v", err)
}
got := addons{}
if err := json.Unmarshal(b, &got); err != nil {
t.Fatalf("failed to unmarshal output; output: %q; err: %v", string(b), err)
}
if got.Ambassador == nil {
t.Errorf("expected `ambassador` field to not be nil, but was")
}
})
}

View File

@ -25,6 +25,7 @@ import (
"k8s.io/minikube/pkg/minikube/bootstrapper/bsutil/kverify"
"k8s.io/minikube/pkg/minikube/config"
"k8s.io/minikube/pkg/minikube/constants"
"k8s.io/minikube/pkg/minikube/driver"
"k8s.io/minikube/pkg/minikube/exit"
"k8s.io/minikube/pkg/minikube/machine"
@ -164,7 +165,11 @@ func profilesToTableData(profiles []*config.Profile) [][]string {
exit.Error(reason.GuestCpConfig, "error getting primary control plane", err)
}
data = append(data, []string{p.Name, p.Config.Driver, p.Config.KubernetesConfig.ContainerRuntime, cp.IP, strconv.Itoa(cp.Port), p.Config.KubernetesConfig.KubernetesVersion, p.Status, strconv.Itoa(len(p.Config.Nodes))})
k8sVersion := p.Config.KubernetesConfig.KubernetesVersion
if k8sVersion == constants.NoKubernetesVersion { // for --no-kubernetes flag
k8sVersion = "N/A"
}
data = append(data, []string{p.Name, p.Config.Driver, p.Config.KubernetesConfig.ContainerRuntime, cp.IP, strconv.Itoa(cp.Port), k8sVersion, p.Status, strconv.Itoa(len(p.Config.Nodes))})
}
return data
}

View File

@ -40,6 +40,7 @@ import (
"k8s.io/minikube/pkg/minikube/constants"
"k8s.io/minikube/pkg/minikube/cruntime"
"k8s.io/minikube/pkg/minikube/delete"
"k8s.io/minikube/pkg/minikube/download"
"k8s.io/minikube/pkg/minikube/driver"
"k8s.io/minikube/pkg/minikube/exit"
"k8s.io/minikube/pkg/minikube/kubeconfig"
@ -151,7 +152,7 @@ func runDelete(cmd *cobra.Command, args []string) {
}
// register.SetEventLogPath(localpath.EventLog(ClusterFlagValue()))
register.Reg.SetStep(register.Deleting)
download.CleanUpOlderPreloads()
validProfiles, invalidProfiles, err := config.ListProfiles()
if err != nil {
klog.Warningf("'error loading profiles in minikube home %q: %v", localpath.MiniPath(), err)

View File

@ -26,6 +26,7 @@ import (
"k8s.io/minikube/pkg/minikube/mustload"
"k8s.io/minikube/pkg/minikube/node"
"k8s.io/minikube/pkg/minikube/out"
"k8s.io/minikube/pkg/minikube/out/register"
"k8s.io/minikube/pkg/minikube/reason"
"k8s.io/minikube/pkg/minikube/style"
)
@ -70,6 +71,7 @@ var nodeAddCmd = &cobra.Command{
}
}
register.Reg.SetStep(register.InitialSetup)
if err := node.Add(cc, n, false); err != nil {
_, err := maybeDeleteAndRetry(cmd, *cc, n, nil, err)
if err != nil {

View File

@ -32,6 +32,7 @@ import (
"strconv"
"strings"
"github.com/Delta456/box-cli-maker/v2"
"github.com/blang/semver/v4"
"github.com/docker/machine/libmachine/ssh"
"github.com/google/go-containerregistry/pkg/authn"
@ -142,6 +143,7 @@ func runStart(cmd *cobra.Command, args []string) {
}
defer pkgtrace.Cleanup()
displayVersion(version.GetVersion())
go download.CleanUpOlderPreloads()
// No need to do the update check if no one is going to see it
if !viper.GetBool(interactive) || !viper.GetBool(dryRun) {
@ -431,6 +433,15 @@ func displayEnviron(env []string) {
}
func showKubectlInfo(kcs *kubeconfig.Settings, k8sVersion string, machineName string) error {
if k8sVersion == constants.NoKubernetesVersion {
register.Reg.SetStep(register.Done)
out.Step(style.Ready, "Done! minikube is ready without Kubernetes!")
out.BoxedWithConfig(box.Config{Py: 1, Px: 4, Type: "Round", Color: "Green"}, style.Tip, "Things to try without Kubernetes ...", `- "minikube ssh" to SSH into minikube's node.
- "minikube docker-env" to point your docker-cli to the docker inside minikube.
- "minikube image" to build images without docker.`)
return nil
}
// To be shown at the end, regardless of exit path
defer func() {
register.Reg.SetStep(register.Done)
@ -1462,16 +1473,14 @@ func autoSetDriverOptions(cmd *cobra.Command, drvName string) (err error) {
// validateKubernetesVersion ensures that the requested version is reasonable
func validateKubernetesVersion(old *config.ClusterConfig) {
nvs, _ := semver.Make(strings.TrimPrefix(getKubernetesVersion(old), version.VersionPrefix))
oldestVersion := semver.MustParse(strings.TrimPrefix(constants.OldestKubernetesVersion, version.VersionPrefix))
defaultVersion := semver.MustParse(strings.TrimPrefix(constants.DefaultKubernetesVersion, version.VersionPrefix))
zeroVersion := semver.MustParse(strings.TrimPrefix(constants.NoKubernetesVersion, version.VersionPrefix))
oldestVersion, err := semver.Make(strings.TrimPrefix(constants.OldestKubernetesVersion, version.VersionPrefix))
if err != nil {
exit.Message(reason.InternalSemverParse, "Unable to parse oldest Kubernetes version from constants: {{.error}}", out.V{"error": err})
if nvs.Equals(zeroVersion) {
klog.Infof("No Kuberentes version set for minikube, setting Kubernetes version to %s", constants.NoKubernetesVersion)
return
}
defaultVersion, err := semver.Make(strings.TrimPrefix(constants.DefaultKubernetesVersion, version.VersionPrefix))
if err != nil {
exit.Message(reason.InternalSemverParse, "Unable to parse default Kubernetes version from constants: {{.error}}", out.V{"error": err})
}
if nvs.LT(oldestVersion) {
out.WarningT("Specified Kubernetes version {{.specified}} is less than the oldest supported version: {{.oldest}}", out.V{"specified": nvs, "oldest": constants.OldestKubernetesVersion})
if !viper.GetBool(force) {
@ -1518,6 +1527,13 @@ func isBaseImageApplicable(drv string) bool {
}
func getKubernetesVersion(old *config.ClusterConfig) string {
if viper.GetBool(noKubernetes) {
klog.Infof("No Kubernetes flag is set, setting Kubernetes version to %s", constants.NoKubernetesVersion)
if old != nil {
old.KubernetesConfig.KubernetesVersion = constants.NoKubernetesVersion
}
}
paramVersion := viper.GetString(kubernetesVersion)
// try to load the old version first if the user didn't specify anything

View File

@ -55,6 +55,7 @@ const (
nfsSharesRoot = "nfs-shares-root"
nfsShare = "nfs-share"
kubernetesVersion = "kubernetes-version"
noKubernetes = "no-kubernetes"
hostOnlyCIDR = "host-only-cidr"
containerRuntime = "container-runtime"
criSocket = "cri-socket"
@ -164,6 +165,7 @@ func initMinikubeFlags() {
startCmd.Flags().Bool(installAddons, true, "If set, install addons. Defaults to true.")
startCmd.Flags().IntP(nodes, "n", 1, "The number of nodes to spin up. Defaults to 1.")
startCmd.Flags().Bool(preload, true, "If set, download tarball of preloaded images if available to improve start time. Defaults to true.")
startCmd.Flags().Bool(noKubernetes, false, "If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)")
startCmd.Flags().Bool(deleteOnFailure, false, "If set, delete the current cluster if start fails and try again. Defaults to false.")
startCmd.Flags().Bool(forceSystemd, false, "If set, force the container runtime to use systemd as cgroup manager. Defaults to false.")
startCmd.Flags().StringP(network, "", "", "network to run minikube with. Now it is used by docker/podman and KVM drivers. If left empty, minikube will create a new network.")
@ -205,7 +207,7 @@ func initDriverFlags() {
startCmd.Flags().Int(kvmNUMACount, 1, "Simulate numa node count in minikube, supported numa node count range is 1-8 (kvm2 driver only)")
// virtualbox
startCmd.Flags().String(hostOnlyCIDR, "192.168.99.1/24", "The CIDR to be used for the minikube VM (virtualbox driver only)")
startCmd.Flags().String(hostOnlyCIDR, "192.168.59.1/24", "The CIDR to be used for the minikube VM (virtualbox driver only)")
startCmd.Flags().Bool(dnsProxy, false, "Enable proxy for NAT DNS requests (virtualbox driver only)")
startCmd.Flags().Bool(hostDNSResolver, true, "Enable host resolver for NAT DNS requests (virtualbox driver only)")
startCmd.Flags().Bool(noVTXCheck, false, "Disable checking for the availability of hardware virtualization before the vm is started (virtualbox driver only)")
@ -379,6 +381,10 @@ func getRepository(cmd *cobra.Command, k8sVersion string) string {
repository = autoSelectedRepository
}
if repository == "registry.cn-hangzhou.aliyuncs.com/google_containers" {
download.SetAliyunMirror()
}
if cmd.Flags().Changed(imageRepository) || cmd.Flags().Changed(imageMirrorCountry) {
out.Styled(style.Success, "Using image repository {{.name}}", out.V{"name": repository})
}

View File

@ -0,0 +1,102 @@
{
"kubernetesui/dashboard": "registry.cn-hangzhou.aliyuncs.com/google_containers/dashboard",
"kubernetesui/metrics-scraper": "registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-scraper",
"gcr.io/k8s-minikube/auto-pause-hook": "registry.cn-hangzhou.aliyuncs.com/google_containers/auto-pause-hook",
"quay.io/operator-framework/olm": "registry.cn-hangzhou.aliyuncs.com/google_containers/olm",
"quay.io/operator-framework/upstream-community-operators": "registry.cn-hangzhou.aliyuncs.com/google_containers/upstream-community-operators",
"k8s.gcr.io/kube-registry-proxy": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-registry-proxy",
"upmcenterprises/registry-creds": "registry.cn-hangzhou.aliyuncs.com/google_containers/registry-creds",
"quay.io/rhdevelopers/core-dns-patcher": "registry.cn-hangzhou.aliyuncs.com/google_containers/core-dns-patcher",
"nvidia/k8s-device-plugin": "registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-device-plugin",
"ivans3/minikube-log-viewer": "registry.cn-hangzhou.aliyuncs.com/google_containers/minikube-log-viewer",
"cryptexlabs/minikube-ingress-dns": "registry.cn-hangzhou.aliyuncs.com/google_containers/minikube-ingress-dns",
"quay.io/datawire/ambassador-operator": "registry.cn-hangzhou.aliyuncs.com/google_containers/ambassador-operator",
"jettech/kube-webhook-certgen": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-webhook-certgen",
"gcr.io/k8s-minikube/gcp-auth-webhook": "registry.cn-hangzhou.aliyuncs.com/google_containers/gcp-auth-webhook",
"k8s.gcr.io/sig-storage/snapshot-controller": "registry.cn-hangzhou.aliyuncs.com/google_containers/snapshot-controller",
"k8s.gcr.io/sig-storage/csi-attacher": "registry.cn-hangzhou.aliyuncs.com/google_containers/csi-attacher",
"k8s.gcr.io/sig-storage/csi-external-health-monitor-agent": "registry.cn-hangzhou.aliyuncs.com/google_containers/csi-external-health-monitor-agent",
"k8s.gcr.io/sig-storage/csi-external-health-monitor-controller": "registry.cn-hangzhou.aliyuncs.com/google_containers/csi-external-health-monitor-controller",
"k8s.gcr.io/sig-storage/csi-node-driver-registrar": "registry.cn-hangzhou.aliyuncs.com/google_containers/csi-node-driver-registrar",
"k8s.gcr.io/sig-storage/hostpathplugin": "registry.cn-hangzhou.aliyuncs.com/google_containers/hostpathplugin",
"k8s.gcr.io/sig-storage/livenessprobe": "registry.cn-hangzhou.aliyuncs.com/google_containers/livenessprobe",
"k8s.gcr.io/sig-storage/csi-resizer": "registry.cn-hangzhou.aliyuncs.com/google_containers/csi-resizer",
"k8s.gcr.io/sig-storage/csi-snapshotter": "registry.cn-hangzhou.aliyuncs.com/google_containers/csi-snapshotter",
"k8s.gcr.io/sig-storage/csi-provisioner": "registry.cn-hangzhou.aliyuncs.com/google_containers/csi-provisioner",
"registry": "registry.cn-hangzhou.aliyuncs.com/google_containers/registry",
"quay.io/nixpanic/glusterfs-server": "registry.cn-hangzhou.aliyuncs.com/google_containers/glusterfs-server",
"heketi/heketi": "registry.cn-hangzhou.aliyuncs.com/google_containers/heketi",
"coredns/coredns": "registry.cn-hangzhou.aliyuncs.com/google_containers/coredns",
"kindest/kindnetd": "registry.cn-hangzhou.aliyuncs.com/google_containers/kindnetd",
"k8s.gcr.io/ingress-nginx/controller": "registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller",
"gcr.io/cloud-builders/gcs-fetcher": "registry.cn-hangzhou.aliyuncs.com/cloud-builders/gcs-fetcher",
"gcr.io/google-samples/freshpod": "registry.cn-hangzhou.aliyuncs.com/google_containers/freshpod",
"gcr.io/k8s-minikube/gvisor-addon": "registry.cn-hangzhou.aliyuncs.com/google_containers/gvisor-addon",
"gcr.io/k8s-minikube/kicbase": "registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase",
"gcr.io/k8s-minikube/storage-provisioner": "registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner",
"gcr.io/kubernetes-helm/tiller": "registry.cn-hangzhou.aliyuncs.com/google_containers/tiller",
"k8s.gcr.io/addon-resizer": "registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer",
"k8s.gcr.io/busybox": "registry.cn-hangzhou.aliyuncs.com/google_containers/busybox",
"k8s.gcr.io/cluster-autoscaler": "registry.cn-hangzhou.aliyuncs.com/google_containers/cluster-autoscaler",
"k8s.gcr.io/coredns/coredns": "registry.cn-hangzhou.aliyuncs.com/google_containers/coredns",
"k8s.gcr.io/defaultbackend": "registry.cn-hangzhou.aliyuncs.com/google_containers/defaultbackend",
"k8s.gcr.io/echoserver": "registry.cn-hangzhou.aliyuncs.com/google_containers/echoserver",
"k8s.gcr.io/elasticsearch": "registry.cn-hangzhou.aliyuncs.com/google_containers/elasticsearch",
"k8s.gcr.io/etcd": "registry.cn-hangzhou.aliyuncs.com/google_containers/etcd",
"k8s.gcr.io/etcd-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/etcd-amd64",
"k8s.gcr.io/exechealthz-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/exechealthz-amd64",
"k8s.gcr.io/flannel-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/flannel-amd64",
"k8s.gcr.io/fluentd-elasticsearch": "registry.cn-hangzhou.aliyuncs.com/google_containers/fluentd-elasticsearch",
"k8s.gcr.io/heapster": "registry.cn-hangzhou.aliyuncs.com/google_containers/heapster",
"k8s.gcr.io/heapster_grafana": "registry.cn-hangzhou.aliyuncs.com/google_containers/heapster_grafana",
"k8s.gcr.io/heapster_influxdb": "registry.cn-hangzhou.aliyuncs.com/google_containers/heapster_influxdb",
"k8s.gcr.io/heapster-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/heapster-amd64",
"k8s.gcr.io/heapster-grafana-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/heapster-grafana-amd64",
"k8s.gcr.io/heapster-influxdb-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/heapster-influxdb-amd64",
"k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-dnsmasq-nanny-amd64",
"k8s.gcr.io/k8s-dns-kube-dns-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-kube-dns-amd64",
"k8s.gcr.io/k8s-dns-node-cache": "registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-node-cache",
"k8s.gcr.io/k8s-dns-sidecar-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-sidecar-amd64",
"k8s.gcr.io/kube-addon-manager": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-addon-manager",
"k8s.gcr.io/kube-addon-manager-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-addon-manager-amd64",
"k8s.gcr.io/kube-apiserver": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver",
"k8s.gcr.io/kube-apiserver-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver-amd64",
"k8s.gcr.io/kube-controller-manager": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager",
"k8s.gcr.io/kube-controller-manager-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager-amd64",
"k8s.gcr.io/kube-cross": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-cross",
"k8s.gcr.io/kube-dnsmasq-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-dnsmasq-amd64",
"k8s.gcr.io/kube-proxy": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy",
"k8s.gcr.io/kube-proxy-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy-amd64",
"k8s.gcr.io/kube-scheduler": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler",
"k8s.gcr.io/kube-scheduler-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler-amd64",
"k8s.gcr.io/kube-state-metrics": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-state-metrics",
"k8s.gcr.io/kubedns-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kubedns-amd64",
"k8s.gcr.io/kubernetes-dashboard-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64",
"k8s.gcr.io/metrics-server-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64",
"k8s.gcr.io/minikube-nvidia-driver-installer": "registry.cn-hangzhou.aliyuncs.com/google_containers/minikube-nvidia-driver-installer",
"k8s.gcr.io/mongodb-install": "registry.cn-hangzhou.aliyuncs.com/google_containers/mongodb-install",
"k8s.gcr.io/nginx-slim": "registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-slim",
"k8s.gcr.io/nvidia-gpu-device-plugin": "registry.cn-hangzhou.aliyuncs.com/google_containers/nvidia-gpu-device-plugin",
"k8s.gcr.io/pause": "registry.cn-hangzhou.aliyuncs.com/google_containers/pause",
"k8s.gcr.io/pause-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/pause-amd64",
"k8s.gcr.io/spark": "registry.cn-hangzhou.aliyuncs.com/google_containers/spark",
"k8s.gcr.io/spartakus-amd64": "registry.cn-hangzhou.aliyuncs.com/google_containers/spartakus-amd64",
"k8s.gcr.io/zeppelin": "registry.cn-hangzhou.aliyuncs.com/google_containers/zeppelin",
"quay.io/coreos/configmap-reload": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/configmap-reload",
"quay.io/coreos/grafana-watcher": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/grafana-watcher",
"quay.io/coreos/hyperkube": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/hyperkube",
"quay.io/coreos/kube-rbac-proxy": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/kube-rbac-proxy",
"quay.io/coreos/kube-state-metrics": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/kube-state-metrics",
"quay.io/coreos/monitoring-grafana": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/monitoring-grafana",
"quay.io/coreos/prometheus-config-reloader": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/prometheus-config-reloader",
"quay.io/coreos/prometheus-operator": "registry.cn-hangzhou.aliyuncs.com/coreos_containers/prometheus-operator",
"quay.io/kubernetes-ingress-controller/nginx-ingress-controller": "registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller",
"quay.io/kubernetes-service-catalog/service-catalog": "registry.cn-hangzhou.aliyuncs.com/kubernetes-service-catalog/service-catalog",
"quay.io/prometheus/alertmanager": "registry.cn-hangzhou.aliyuncs.com/google_containers/alertmanager",
"quay.io/prometheus/prometheus": "registry.cn-hangzhou.aliyuncs.com/google_containers/prometheus",
"k8s.gcr.io/ingress-nginx/kube-webhook-certgen": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-webhook-certgen",
"gcr.io/k8s-minikube/minikube-ingress-dns": "registry.cn-hangzhou.aliyuncs.com/google_containers/minikube-ingress-dns",
"gcr.io/google_containers/pause": "registry.cn-hangzhou.aliyuncs.com/google_containers/pause",
"k8s.gcr.io/metrics-server/metrics-server": "registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server",
"gcr.io/google_containers/kube-registry-proxy": "registry.cn-hangzhou.aliyuncs.com/google_containers/kube-registry-proxy"
}

View File

@ -135,4 +135,8 @@ var (
// PortainerAssets assets for portainer addon
//go:embed portainer/portainer.yaml.tmpl
PortainerAssets embed.FS
// AliyunMirror assets for aliyun_mirror.json
//go:embed aliyun_mirror.json
AliyunMirror embed.FS
)

View File

@ -1,4 +1,4 @@
# Copyright 2017 The Kubernetes Authors.
# Copyright 2021 The Kubernetes Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -12,7 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
---
apiVersion: v1
kind: ServiceAccount
metadata:

View File

@ -46,6 +46,8 @@ metadata:
data:
# see https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/configmap.md for all possible options and their description
hsts: "false"
# see https://github.com/kubernetes/minikube/pull/12702#discussion_r727519180: 'allow-snippet-annotations' should be used only if strictly required by another part of the deployment
# allow-snippet-annotations: 'true'
---
apiVersion: v1
kind: ConfigMap
@ -102,8 +104,10 @@ rules:
- list
- watch
- apiGroups:
{{- if eq .IngressAPIVersion "v1beta1"}}
- extensions
- networking.k8s.io # k8s 1.14+
{{- end}}
- networking.k8s.io
resources:
- ingresses
verbs:
@ -118,14 +122,16 @@ rules:
- create
- patch
- apiGroups:
{{- if eq .IngressAPIVersion "v1beta1"}}
- extensions
- networking.k8s.io # k8s 1.14+
{{- end}}
- networking.k8s.io
resources:
- ingresses/status
verbs:
- update
- apiGroups:
- networking.k8s.io # k8s 1.14+
- networking.k8s.io
resources:
- ingressclasses
verbs:
@ -187,8 +193,10 @@ rules:
- list
- watch
- apiGroups:
{{- if eq .IngressAPIVersion "v1beta1"}}
- extensions
- networking.k8s.io # k8s 1.14+
{{- end}}
- networking.k8s.io
resources:
- ingresses
verbs:
@ -196,14 +204,16 @@ rules:
- list
- watch
- apiGroups:
{{- if eq .IngressAPIVersion "v1beta1"}}
- extensions
- networking.k8s.io # k8s 1.14+
{{- end}}
- networking.k8s.io
resources:
- ingresses/status
verbs:
- update
- apiGroups:
- networking.k8s.io # k8s 1.14+
- networking.k8s.io
resources:
- ingressclasses
verbs:
@ -225,7 +235,6 @@ rules:
- configmaps
verbs:
- create
- update
- apiGroups:
- ''
resources:
@ -253,17 +262,6 @@ subjects:
name: ingress-nginx
namespace: ingress-nginx
---
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
labels:
app.kubernetes.io/component: controller
name: nginx
annotations:
ingressclass.kubernetes.io/is-default-class: "true"
spec:
controller: k8s.io/ingress-nginx
---
# Source: ingress-nginx/templates/controller-service-webhook.yaml
apiVersion: v1
kind: Service
@ -280,6 +278,9 @@ spec:
- name: https-webhook
port: 443
targetPort: webhook
{{- if eq .IngressAPIVersion "v1"}}
appProtocol: https
{{- end}}
selector:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/instance: ingress-nginx
@ -298,15 +299,26 @@ metadata:
namespace: ingress-nginx
spec:
type: NodePort
{{- if eq .IngressAPIVersion "v1"}}
ipFamilyPolicy: SingleStack
ipFamilies:
- IPv4
{{- end}}
ports:
- name: http
port: 80
protocol: TCP
targetPort: http
{{- if eq .IngressAPIVersion "v1"}}
appProtocol: http
{{- end}}
- name: https
port: 443
protocol: TCP
targetPort: https
{{- if eq .IngressAPIVersion "v1"}}
appProtocol: https
{{- end}}
selector:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/instance: ingress-nginx
@ -329,10 +341,6 @@ spec:
app.kubernetes.io/instance: ingress-nginx
app.kubernetes.io/component: controller
revisionHistoryLimit: 10
strategy:
rollingUpdate:
maxUnavailable: 1
type: RollingUpdate
minReadySeconds: 0
template:
metadata:
@ -355,7 +363,14 @@ spec:
args:
- /nginx-ingress-controller
- --election-id=ingress-controller-leader
{{- if eq .IngressAPIVersion "v1"}}
- --controller-class=k8s.io/ingress-nginx
- --watch-ingress-without-class=true
{{- end}}
{{- if eq .IngressAPIVersion "v1beta1"}}
- --ingress-class=nginx
{{- end}}
- --publish-status-address=localhost
- --configmap=$(POD_NAMESPACE)/ingress-nginx-controller
- --report-node-internal-ip-address
- --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services
@ -431,12 +446,28 @@ spec:
secret:
secretName: ingress-nginx-admission
---
{{- if eq .IngressAPIVersion "v1"}}
# Source: ingress-nginx/templates/controller-ingressclass.yaml
# We don't support namespaced ingressClass yet
# So a ClusterRole and a ClusterRoleBinding is required
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/instance: ingress-nginx
app.kubernetes.io/component: controller
name: nginx
namespace: ingress-nginx
annotations:
ingressclass.kubernetes.io/is-default-class: "true"
spec:
controller: k8s.io/ingress-nginx
---
{{- end}}
# Source: ingress-nginx/templates/admission-webhooks/validating-webhook.yaml
# before changing this value, check the required kubernetes version
# https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#prerequisites
# Currently(v0.49.0), ValidatingWebhookConfiguration of this validates v1beta1 request
# TODO(govargo): check this after upstream ingress-nginx can validate v1 version
# https://github.com/kubernetes/ingress-nginx/blob/controller-v0.49.0/internal/admission/controller/main.go#L46-L52
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingWebhookConfiguration
metadata:
@ -461,10 +492,10 @@ webhooks:
failurePolicy: Fail
sideEffects: None
admissionReviewVersions:
{{- if eq .IngressAPIVersion "v1beta1"}}
- v1
{{- end}}
- {{.IngressAPIVersion}}
{{- if eq .IngressAPIVersion "v1beta1"}}
- v1beta1
{{- end}}
clientConfig:
service:
namespace: ingress-nginx

View File

@ -1,5 +1,13 @@
[
{
"name": "v1.24.0-beta.0",
"checksums": {
"darwin": "f8b0a2d0ca7435e98fff553702ed4977e33b301d0316ee4512d28b485701613e",
"linux": "8cd17a9fb5c73f9cab97754bd6ed725cb2b1fe9faa02f7f75a9cf5566b6f8716",
"windows": "ba87d2ef329db940890f8970afce1a6654814e0e427f91b9d5347496d4e7d1a3"
}
},
{
"name": "v1.22.0-beta.0",
"checksums": {
"darwin": "1ec06c37be5c6c79a7255da09ff83490a44d1e8cd2b2f45e4b489edfdeacde94",

View File

@ -1,4 +1,12 @@
[
{
"name": "v1.24.0",
"checksums": {
"darwin": "55f14e4f411370da18d7b9432ae4edd128f4f047bbc87a278e08ba256ff6f669",
"linux": "3bc218476cf205acf11b078d45210a4882e136d24a3cbb7d8d645408e423b8fe",
"windows": "bb729590e111652d5f444fa66b66196491fa21c0713e4ff29f6e5360ab13a02c"
}
},
{
"name": "v1.23.2",
"checksums": {

41
go.mod
View File

@ -3,8 +3,8 @@ module k8s.io/minikube
go 1.17
require (
cloud.google.com/go/storage v1.18.0
contrib.go.opencensus.io/exporter/stackdriver v0.12.1
cloud.google.com/go/storage v1.18.2
contrib.go.opencensus.io/exporter/stackdriver v0.13.10
github.com/Delta456/box-cli-maker/v2 v2.2.2
github.com/GoogleCloudPlatform/docker-credential-gcr v0.0.0-20210713212222-faed5e8b8ca2
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/trace v0.16.0
@ -16,10 +16,10 @@ require (
github.com/c4milo/gotoolkit v0.0.0-20190525173301-67483a18c17a // indirect
github.com/cenkalti/backoff/v4 v4.1.1
github.com/cheggaaa/pb/v3 v3.0.8
github.com/cloudevents/sdk-go/v2 v2.5.0
github.com/cloudevents/sdk-go/v2 v2.6.1
github.com/cloudfoundry-attic/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21
github.com/cloudfoundry/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21 // indirect
github.com/docker/docker v20.10.9+incompatible
github.com/docker/docker v20.10.10+incompatible
github.com/docker/go-units v0.4.0
github.com/docker/machine v0.16.2
github.com/elazarl/goproxy v0.0.0-20210110162100-a92cc753f88e
@ -49,7 +49,7 @@ require (
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
github.com/klauspost/cpuid v1.2.0
github.com/libvirt/libvirt-go v3.9.0+incompatible
github.com/machine-drivers/docker-machine-driver-vmware v0.1.3
github.com/machine-drivers/docker-machine-driver-vmware v0.1.5
github.com/mattbaird/jsonpatch v0.0.0-20200820163806-098863c1fc24
github.com/mattn/go-isatty v0.0.14
github.com/mitchellh/go-ps v1.0.0
@ -66,7 +66,7 @@ require (
github.com/pmezard/go-difflib v1.0.0
github.com/russross/blackfriday v1.5.3-0.20200218234912-41c5fccfd6f6 // indirect
github.com/samalba/dockerclient v0.0.0-20160414174713-91d7393ff859 // indirect
github.com/shirou/gopsutil/v3 v3.21.9
github.com/shirou/gopsutil/v3 v3.21.10
github.com/spf13/cobra v1.2.1
github.com/spf13/pflag v1.0.5
github.com/spf13/viper v1.9.0
@ -80,19 +80,19 @@ require (
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5
golang.org/x/exp v0.0.0-20210220032938-85be41e4509f
golang.org/x/mod v0.5.1
golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f
golang.org/x/oauth2 v0.0.0-20211005180243-6b3c2da341f1
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c
golang.org/x/sys v0.0.0-20210917161153-d61c044b1678
golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359
golang.org/x/term v0.0.0-20210406210042-72f3dc4e9b72
golang.org/x/text v0.3.7
gonum.org/v1/plot v0.10.0
google.golang.org/api v0.58.0
google.golang.org/api v0.60.0
gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22 // indirect
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.22.2
k8s.io/apimachinery v0.22.2
k8s.io/client-go v0.22.2
k8s.io/klog/v2 v2.20.0
k8s.io/klog/v2 v2.30.0
k8s.io/kubectl v0.22.2
k8s.io/kubernetes v1.21.3
sigs.k8s.io/sig-storage-lib-external-provisioner/v6 v6.3.0
@ -100,20 +100,22 @@ require (
require (
cloud.google.com/go v0.97.0 // indirect
cloud.google.com/go/container v0.1.0 // indirect
cloud.google.com/go/monitoring v0.1.0 // indirect
cloud.google.com/go/trace v0.1.0 // indirect
cloud.google.com/go/monitoring v1.1.0 // indirect
cloud.google.com/go/trace v1.0.0 // indirect
github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78 // indirect
github.com/MakeNowJust/heredoc v0.0.0-20170808103936-bb23615498cd // indirect
github.com/Microsoft/go-winio v0.5.0 // indirect
github.com/StackExchange/wmi v1.2.1 // indirect
github.com/VividCortex/ewma v1.1.1 // indirect
github.com/ajstarks/svgo v0.0.0-20210923152817-c3b6e2f0c527 // indirect
github.com/aws/aws-sdk-go v1.35.24 // indirect
github.com/aws/aws-sdk-go v1.37.0 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect
github.com/census-instrumentation/opencensus-proto v0.2.1 // indirect
github.com/census-instrumentation/opencensus-proto v0.3.0 // indirect
github.com/cespare/xxhash v1.1.0 // indirect
github.com/cespare/xxhash/v2 v2.1.1 // indirect
github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403 // indirect
github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed // indirect
github.com/containerd/cgroups v1.0.1 // indirect
github.com/containerd/containerd v1.5.2 // indirect
github.com/containerd/stargz-snapshotter/estargz v0.7.0 // indirect
@ -123,14 +125,16 @@ require (
github.com/docker/distribution v2.7.1+incompatible // indirect
github.com/docker/docker-credential-helpers v0.6.3 // indirect
github.com/docker/go-connections v0.4.0 // indirect
github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0 // indirect
github.com/envoyproxy/protoc-gen-validate v0.1.0 // indirect
github.com/evanphx/json-patch v4.9.0+incompatible // indirect
github.com/fatih/color v1.10.0 // indirect
github.com/fogleman/gg v1.3.0 // indirect
github.com/fsnotify/fsnotify v1.5.1 // indirect
github.com/go-fonts/liberation v0.2.0 // indirect
github.com/go-latex/latex v0.0.0-20210823091927-c0d11ff05a81 // indirect
github.com/go-logr/logr v1.0.0 // indirect
github.com/go-ole/go-ole v1.2.5 // indirect
github.com/go-logr/logr v1.2.0 // indirect
github.com/go-ole/go-ole v1.2.6 // indirect
github.com/go-pdf/fpdf v0.5.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 // indirect
@ -151,6 +155,7 @@ require (
github.com/jmespath/go-jmespath v0.4.0 // indirect
github.com/json-iterator/go v1.1.11 // indirect
github.com/klauspost/compress v1.13.0 // indirect
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect
github.com/magiconair/properties v1.8.5 // indirect
github.com/mattn/go-colorable v0.1.8 // indirect
github.com/mattn/go-runewidth v0.0.13 // indirect
@ -194,7 +199,7 @@ require (
golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba // indirect
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
google.golang.org/appengine v1.6.7 // indirect
google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0 // indirect
google.golang.org/genproto v0.0.0-20211021150943-2b146023228c // indirect
google.golang.org/grpc v1.40.0 // indirect
google.golang.org/protobuf v1.27.1 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect

88
go.sum
View File

@ -26,9 +26,6 @@ cloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAV
cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM=
cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY=
cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ=
cloud.google.com/go v0.92.1/go.mod h1:cMc7asehN84LBi1JGTHo4n8wuaGuNAZ7lR7b1YNJBrE=
cloud.google.com/go v0.92.2/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
cloud.google.com/go v0.92.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4=
cloud.google.com/go v0.97.0 h1:3DXvAyifywvq64LfkKaMOmkWPS1CikIQdMe2lY9vxU8=
@ -39,14 +36,12 @@ cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvf
cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg=
cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc=
cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ=
cloud.google.com/go/container v0.1.0 h1:TcvimswG10seya10bbp4Ai4aGJuzUnhSuoOcaPu9UNI=
cloud.google.com/go/container v0.1.0/go.mod h1:1rrp90HFUViXnpvafHiTaaAxNscrHiFgfUCEiEHBlEk=
cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=
cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk=
cloud.google.com/go/firestore v1.6.0/go.mod h1:afJwI0vaXwAG54kI7A//lP/lSPDkQORQuMkv56TxEPU=
cloud.google.com/go/monitoring v0.1.0 h1:vssDZ792skH6AWCDH1OogKfs/FzgEVTB/yUAzfgBR24=
cloud.google.com/go/monitoring v0.1.0/go.mod h1:Hpm3XfzJv+UTiXzCG5Ffp0wijzHTC7Cv4eR7o3x/fEE=
cloud.google.com/go/monitoring v1.1.0 h1:ZnyNdf/XRcynMmKzRSNTOdOyYPs6G7do1l2D2hIvIKo=
cloud.google.com/go/monitoring v1.1.0/go.mod h1:L81pzz7HKn14QCMaCs6NTQkdBnE87TElyanS95vIcl4=
cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=
cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw=
cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA=
@ -56,13 +51,12 @@ cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0Zeo
cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk=
cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs=
cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0=
cloud.google.com/go/storage v1.18.0 h1:HM5Hu/BqgmWbo7pT9KFYGUccwzA8ZWDICJww9m5t9UA=
cloud.google.com/go/storage v1.18.0/go.mod h1:h0NImijCz/2WHwLh03BvmWdrNe4I/pzUdvUHoxIUroU=
cloud.google.com/go/trace v0.1.0 h1:nUGUK79FOkN0UGUXhBmVBkbu1PYsHe0YyFSPLOD9Npg=
cloud.google.com/go/trace v0.1.0/go.mod h1:wxEwsoeRVPbeSkt7ZC9nWCgmoKQRAoySN7XHW2AmI7g=
contrib.go.opencensus.io/exporter/stackdriver v0.12.1 h1:Dll2uFfOVI3fa8UzsHyP6z0M6fEc9ZTAMo+Y3z282Xg=
contrib.go.opencensus.io/exporter/stackdriver v0.12.1/go.mod h1:iwB6wGarfphGGe/e5CWqyUk/cLzKnWsOKPVW3no6OTw=
contrib.go.opencensus.io/resource v0.1.1/go.mod h1:F361eGI91LCmW1I/Saf+rX0+OFcigGlFvXwEGEnkRLA=
cloud.google.com/go/storage v1.18.2 h1:5NQw6tOn3eMm0oE8vTkfjau18kjL79FlMjy/CHTpmoY=
cloud.google.com/go/storage v1.18.2/go.mod h1:AiIj7BWXyhO5gGVmYJ+S8tbkCx3yb0IMjua8Aw4naVM=
cloud.google.com/go/trace v1.0.0 h1:laKx2y7IWMjguCe5zZx6n7qLtREk4kyE69SXVC0VSN8=
cloud.google.com/go/trace v1.0.0/go.mod h1:4iErSByzxkyHWzzlAj63/Gmjz0NH1ASqhJguHpGcr6A=
contrib.go.opencensus.io/exporter/stackdriver v0.13.10 h1:a9+GZPUe+ONKUwULjlEOucMMG0qfSCCenlji0Nhqbys=
contrib.go.opencensus.io/exporter/stackdriver v0.13.10/go.mod h1:I5htMbyta491eUxufwwZPQdcKvvgzMB4O9ni41YnIM8=
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
dmitri.shuralyov.com/gpu/mtl v0.0.0-20201218220906-28db891af037/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8=
@ -117,6 +111,7 @@ github.com/Microsoft/hcsshim/test v0.0.0-20201218223536-d3e5debf77da/go.mod h1:5
github.com/Microsoft/hcsshim/test v0.0.0-20210227013316-43a75bb4edd3/go.mod h1:mw7qgWloBUl75W/gVH3cQszUg1+gUITj7D6NY7ywVnY=
github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ=
github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c=
github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE=
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
github.com/Parallels/docker-machine-parallels/v2 v2.0.1 h1:3Rj+4tcm/UqMU5g2bLJmpxD0ssn1BB5am4Cd6yUDbVI=
github.com/Parallels/docker-machine-parallels/v2 v2.0.1/go.mod h1:NKwI5KryEmEHMZVj80t9JQcfXWZp4/ZYNBuw4C5sQ9E=
@ -154,9 +149,9 @@ github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:l
github.com/auth0/go-jwt-middleware v0.0.0-20170425171159-5493cabe49f7/go.mod h1:LWMyo4iOLWXHGdBki7NIht1kHru/0wM179h+d3g8ATM=
github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0=
github.com/aws/aws-sdk-go v1.15.78/go.mod h1:E3/ieXAlvM0XWO57iftYVDLLvQ824smPP3ATZkfNZeM=
github.com/aws/aws-sdk-go v1.19.18/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.35.24 h1:U3GNTg8+7xSM6OAJ8zksiSM4bRqxBWmVwwehvOSNG3A=
github.com/aws/aws-sdk-go v1.35.24/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k=
github.com/aws/aws-sdk-go v1.37.0 h1:GzFnhOIsrGyQ69s7VgqtrG2BG8v7X7vwB3Xpbd/DBBk=
github.com/aws/aws-sdk-go v1.37.0/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM=
github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
@ -193,9 +188,9 @@ github.com/cenkalti/backoff v2.1.1+incompatible h1:tKJnvO2kl0zmb/jA5UKAt4VoEVw1q
github.com/cenkalti/backoff v2.1.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM=
github.com/cenkalti/backoff/v4 v4.1.1 h1:G2HAfAmvm/GcKan2oOQpBXOd2tT2G57ZnZGWa1PxPBQ=
github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw=
github.com/census-instrumentation/opencensus-proto v0.2.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
github.com/census-instrumentation/opencensus-proto v0.2.1 h1:glEXhBS5PSLLv4IXzLA5yPRVX4bilULVyxxbrfOtDAk=
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
github.com/census-instrumentation/opencensus-proto v0.3.0 h1:t/LhUZLVitR1Ow2YOnduCsavhwFUklBMoGVYUCqmCqk=
github.com/census-instrumentation/opencensus-proto v0.3.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko=
github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=
github.com/cespare/xxhash/v2 v2.1.1 h1:6MnRN8NT7+YBpUIWxHtefFZOKTAPgGjpQSxqLNn0+qY=
@ -217,8 +212,8 @@ github.com/cilium/ebpf v0.2.0/go.mod h1:To2CFviqOWL/M0gIMsvSMlqe7em/l1ALkX1PyjrX
github.com/cilium/ebpf v0.4.0/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs=
github.com/cilium/ebpf v0.5.0/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs=
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
github.com/cloudevents/sdk-go/v2 v2.5.0 h1:Ts6aLHbBUJfcNcZ4ouAfJ4+Np7SE1Yf2w4ADKRCd7Fo=
github.com/cloudevents/sdk-go/v2 v2.5.0/go.mod h1:nlXhgFkf0uTopxmRXalyMwS2LG70cRGPrxzmjJgSG0U=
github.com/cloudevents/sdk-go/v2 v2.6.1 h1:yHtzgmeBvc0TZx1nrnvYXov1CSvkQyvhEhNMs8Z5Mmk=
github.com/cloudevents/sdk-go/v2 v2.6.1/go.mod h1:nlXhgFkf0uTopxmRXalyMwS2LG70cRGPrxzmjJgSG0U=
github.com/cloudfoundry-attic/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21 h1:Yg2hDs4b13Evkpj42FU2idX2cVXVFqQSheXYKM86Qsk=
github.com/cloudfoundry-attic/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21/go.mod h1:MgJyK38wkzZbiZSKeIeFankxxSA8gayko/nr5x5bgBA=
github.com/cloudfoundry/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21 h1:tuijfIjZyjZaHq9xDUh0tNitwXshJpbLkqMOJv4H3do=
@ -226,7 +221,9 @@ github.com/cloudfoundry/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21/go.mod
github.com/clusterhq/flocker-go v0.0.0-20160920122132-2b8b7259d313/go.mod h1:P1wt9Z3DP8O6W3rvwCt0REIlshg1InHImaLW0t3ObY0=
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403 h1:cqQfy1jclcSy/FwLjemeg3SR1yaINm74aQyupQ0Bl8M=
github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed h1:OZmjad4L3H8ncOIR8rnb5MREYqG8ixi5+WbeUsquF0c=
github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8=
github.com/container-storage-interface/spec v1.3.0/go.mod h1:6URME8mwIBbpVyZV93Ce5St17xBiQJQY67NDsuohiy4=
@ -368,8 +365,8 @@ github.com/docker/docker v17.12.0-ce-rc1.0.20181225093023-5ddb1d410a8b+incompati
github.com/docker/docker v17.12.0-ce-rc1.0.20190115220918-5ec31380a5d3+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v20.10.2+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v20.10.7+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v20.10.9+incompatible h1:JlsVnETOjM2RLQa0Cc1XCIspUdXW3Zenq9P54uXBm6k=
github.com/docker/docker v20.10.9+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v20.10.10+incompatible h1:GKkP0T7U4ks6X3lmmHKC2QDprnpRJor2Z5a8m62R9ZM=
github.com/docker/docker v20.10.10+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker-credential-helpers v0.6.3 h1:zI2p9+1NQYdnG6sMU26EX4aVGlqbInSQxQXLvzJ4RPQ=
github.com/docker/docker-credential-helpers v0.6.3/go.mod h1:WRaJzqw3CTB9bk10avuGsjVBZsD05qeibJ1/TYlvc0Y=
github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ=
@ -398,7 +395,9 @@ github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1m
github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po=
github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0 h1:dulLQAYQFYtG5MTplgNGHWuV2D+OBD+Z8lmDBmbLg+s=
github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ=
github.com/envoyproxy/protoc-gen-validate v0.1.0 h1:EQciDnbrYxy13PgWoY8AqoxGiPrpgBZ1R8UNe3ddc+A=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/euank/go-kmsg-parser v2.0.0+incompatible/go.mod h1:MhmAMZ8V4CYH4ybgdRwPr2TU5ThnS43puaKEMpja1uw=
github.com/evanphx/json-patch v4.5.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
@ -452,10 +451,11 @@ github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V
github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
github.com/go-logr/logr v1.0.0 h1:kH951GinvFVaQgy/ki/B3YYmQtRpExGigSJg6O8z5jo=
github.com/go-logr/logr v1.0.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-ole/go-ole v1.2.5 h1:t4MGB5xEDZvXI+0rMjjsfBsD7yAgp/s9ZDkL1JndXwY=
github.com/go-logr/logr v1.2.0 h1:QK40JKJyMdUDz+h+xvCsru/bJhvG0UxvePV0ufL/AcE=
github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-ole/go-ole v1.2.5/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY=
github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
github.com/go-openapi/analysis v0.0.0-20180825180245-b006789cd277/go.mod h1:k70tL6pCuVxPJOHXQ+wIac1FUrvNkHolPie/cLEU6hI=
github.com/go-openapi/analysis v0.17.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik=
github.com/go-openapi/analysis v0.18.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik=
@ -604,7 +604,6 @@ github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLe
github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
github.com/google/pprof v0.0.0-20210804190019-f964ff605595/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ=
github.com/google/slowjam v1.0.0 h1:dA9flW4oGTJcSy8FpEvdq8JKwPFVgqYwMmjhqlb2L+s=
@ -716,7 +715,6 @@ github.com/jellevandenhooff/dkim v0.0.0-20150330215556-f50fe3d243e1/go.mod h1:E0
github.com/jimstudt/http-authentication v0.0.0-20140401203705-3eca13d6893a/go.mod h1:wK6yTYYcgjHE1Z1QtXACPDjcFJyBskHEdagmnq3vsP8=
github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=
github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=
github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=
github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg=
github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8=
@ -795,8 +793,10 @@ github.com/lucas-clemente/aes12 v0.0.0-20171027163421-cd47fb39b79f/go.mod h1:JpH
github.com/lucas-clemente/quic-clients v0.1.0/go.mod h1:y5xVIEoObKqULIKivu+gD/LU90pL73bTdtQjPBvtCBk=
github.com/lucas-clemente/quic-go v0.10.2/go.mod h1:hvaRS9IHjFLMq76puFJeWNfmn+H70QZ/CXoxqw9bzao=
github.com/lucas-clemente/quic-go-certificates v0.0.0-20160823095156-d2f86524cced/go.mod h1:NCcRLrOTZbzhZvixZLlERbJtDtYsmMw8Jc4vS8Z0g58=
github.com/machine-drivers/docker-machine-driver-vmware v0.1.3 h1:CIdHhp5vSr+7i3DYmXyJHjVOeo27AGWtvq5SfmjyMVs=
github.com/machine-drivers/docker-machine-driver-vmware v0.1.3/go.mod h1:p2hY99UqqG4FNLvAotM0K5kPlShyQ486ymrkNqv1NiA=
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4=
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I=
github.com/machine-drivers/docker-machine-driver-vmware v0.1.5 h1:51GqJ84u9EBATnn8rWsHNavcuRPlCLnDmvjzZVuliwY=
github.com/machine-drivers/docker-machine-driver-vmware v0.1.5/go.mod h1:dTnTzUH3uzhMo0ddV1zRjGYWcVhQWwqiHPxz5l+HPd0=
github.com/machine-drivers/machine v0.7.1-0.20210719174735-6eca26732baa h1:RDn5zVjqpQP8yElV/30YUNiDsjksDSqq30JVQfo1wzY=
github.com/machine-drivers/machine v0.7.1-0.20210719174735-6eca26732baa/go.mod h1:79Uwa2hGd5S39LDJt58s8JZcIhGEK6pkq9bsuTbFWbk=
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
@ -1055,8 +1055,8 @@ github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg
github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo=
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
github.com/shirou/gopsutil/v3 v3.21.9 h1:Vn4MUz2uXhqLSiCbGFRc0DILbMVLAY92DSkT8bsYrHg=
github.com/shirou/gopsutil/v3 v3.21.9/go.mod h1:YWp/H8Qs5fVmf17v7JNZzA0mPJ+mS2e9JdiUF9LlKzQ=
github.com/shirou/gopsutil/v3 v3.21.10 h1:flTg1DrnV/UVrBqjLgVgDJzx6lf+91rC64/dBHmO2IA=
github.com/shirou/gopsutil/v3 v3.21.10/go.mod h1:t75NhzCZ/dYyPQjyQmrAYP6c8+LCdFANeBMdLPCNnew=
github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc=
github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc=
@ -1072,6 +1072,7 @@ github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1
github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ=
github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk=
@ -1377,8 +1378,9 @@ golang.org/x/oauth2 v0.0.0-20210402161424-2e8d93401602/go.mod h1:KelEdhl1UZF7XfJ
golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f h1:Qmd2pbz05z7z6lm0DrgQVVPuBm92jqujBKMHMOlOQEw=
golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20211005180243-6b3c2da341f1 h1:B333XXssMuKQeBwiNODx4TupZy7bf4sxFZnN2ZOcvUE=
golang.org/x/oauth2 v0.0.0-20211005180243-6b3c2da341f1/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/perf v0.0.0-20180704124530-6e6d33e29852/go.mod h1:JLpeXjPJfIyPr5TlbXLkXWLhP8nz10XfvxElABhCtcw=
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=
@ -1399,7 +1401,6 @@ golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5h
golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190115152922-a457fd036447/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190124100055-b90733256f2e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@ -1495,8 +1496,11 @@ golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20210816074244-15123e1e1f71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210917161153-d61c044b1678 h1:J27LZFQBFoihqXoegpscI10HpjZ7B5WQLLKL2FZXQKw=
golang.org/x/sys v0.0.0-20210917161153-d61c044b1678/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211013075003-97ac67df715c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359 h1:2B5p2L5IfGiD7+b9BOoRMC6DgObAVZV+Fsp050NqXik=
golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
@ -1608,7 +1612,6 @@ gonum.org/v1/plot v0.10.0 h1:ymLukg4XJlQnYUJCp+coQq5M7BsUJFk6XQE4HPflwdw=
gonum.org/v1/plot v0.10.0/go.mod h1:JWIHJ7U20drSQb/aDpTetJzfC1KlAPldJLpkSy88dvQ=
google.golang.org/api v0.0.0-20160322025152-9bf6e6e569ff/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=
google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE=
google.golang.org/api v0.5.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE=
google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M=
google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg=
google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg=
@ -1639,8 +1642,10 @@ google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6
google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE=
google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE=
google.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI=
google.golang.org/api v0.58.0 h1:MDkAbYIB1JpSgCTOCYYoIec/coMlKK4oVbpnBLLcyT0=
google.golang.org/api v0.58.0/go.mod h1:cAbP2FsxoGVNwtgNAmmn3y5G1TWAiVYRmg4yku3lv+E=
google.golang.org/api v0.59.0/go.mod h1:sT2boj7M9YJxZzgeZqXogmhfmRWDtPzT31xkieUbuZU=
google.golang.org/api v0.60.0 h1:eq/zs5WPH4J9undYM9IP1O7dSr7Yh8Y0GtSCpzGzIUk=
google.golang.org/api v0.60.0/go.mod h1:d7rl65NZAkEQ90JFzqBjcRq1TVeG5ZoGV3sSpEnnVb4=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
@ -1712,8 +1717,13 @@ google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEc
google.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
google.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
google.golang.org/genproto v0.0.0-20210917145530-b395a37504d4/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY=
google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0 h1:5Tbluzus3QxoAJx4IefGt1W0HQZW4nuMrVk684jI74Q=
google.golang.org/genproto v0.0.0-20210921142501-181ce0d877f6/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20211008145708-270636b82663/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20211016002631-37fc39342514/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20211018162055-cf77aa76bad2/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/genproto v0.0.0-20211021150943-2b146023228c h1:FqrtZMB5Wr+/RecOM3uPJNPfWR8Upb5hAPnt7PU6i4k=
google.golang.org/genproto v0.0.0-20211021150943-2b146023228c/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc=
google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=
@ -1846,8 +1856,8 @@ k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.3.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.8.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec=
k8s.io/klog/v2 v2.20.0 h1:tlyxlSvd63k7axjhuchckaRJm+a92z5GSOrTOQY5sHw=
k8s.io/klog/v2 v2.20.0/go.mod h1:Gm8eSIfQN6457haJuPaMxZw4wyP5k+ykPFlrhQDvhvw=
k8s.io/klog/v2 v2.30.0 h1:bUO6drIvCIsvZ/XFgfxoGFQU/a4Qkh0iAlvUR7vlHJw=
k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/kube-aggregator v0.21.2/go.mod h1:7NgmUXJziySAJ7GxMRBBwcJay7MLUoxms31fw/ICpYk=
k8s.io/kube-controller-manager v0.21.2/go.mod h1:gu0rV2UWy1k05E3kZxJFQE1F7RR1PZlq83+9J+lWlno=
k8s.io/kube-openapi v0.0.0-20210305001622-591a79e4bda7 h1:vEx13qjvaZ4yfObSSXW7BrMc/KQBBT/Jyee8XtLf4x0=

View File

@ -51,6 +51,8 @@ tar -xzf $tarball
outdir="$(mktemp -d)"
./sonobuoy retrieve "${outdir}"
"${MINIKUBE}" delete -p "${PROFILE_NAME}"
cwd=$(pwd)
cd "${outdir}"
@ -74,7 +76,30 @@ description: minikube runs a local Kubernetes cluster on macOS, Linux, and Windo
EOF
cat <<EOF >README.md
./hack/conformance_tests.sh $MINIKUBE $START_ARGS
# Reproducing the test results
## Run minikube with docker driver
Install [docker](https://docs.docker.com/engine/install/)
Install [kubectl](https://v1-18.docs.kubernetes.io/docs/tasks/tools/install-kubectl/)
Clone the [minikube repo](https://github.com/kubernetes/minikube)
## Compile the latest minikube binary
```console
% cd <minikube dir>
% make
```
## Trigger the tests and get back the results
We follow the [official instructions](https://github.com/cncf/k8s-conformance/blob/master/instructions.md):
```console
% cd <minikube dir>
./hack/conformance_tests.sh ${MINIKUBE} ${START_ARGS}
```
This script will run sonobuoy against a minikube cluster with two nodes and the provided parameters.
EOF
cp -r ../results/plugins/e2e/results/global/* .

View File

@ -37,6 +37,7 @@ gcloud cloud-shell ssh --authorize-session << EOF
COMMIT=$COMMIT
EXTRA_BUILD_ARGS=$EXTRA_BUILD_ARGS
access_token=$access_token
ROOT_JOB_ID=$ROOT_JOB_ID
# Prevent cloud-shell is ephemeral warnings on apt-get
touch ~/.cloudshell/no-apt-get-warning

View File

@ -50,6 +50,8 @@ function check_and_install_golang() {
return
fi
sudo chown -R jenkins:jenkins "$INSTALL_PATH"/go
# golang has been installed and check its version
if [[ $(go version | cut -d' ' -f 3) =~ go(([0-9]+)\.([0-9]+).([0-9]+)*) ]]; then
HOST_VERSION=${BASH_REMATCH[1]}
@ -86,6 +88,7 @@ function install_golang() {
sudo rm -rf "$GO_DIR"
sudo mkdir -p "$GO_DIR"
sudo tar -C "$GO_DIR" --strip-components=1 -xzf "$GO_TGZ"
sudo chown -R jenkins:jenkins "$GO_DIR"
popd >/dev/null
echo "installed in $GO_DIR: $($GO_DIR/bin/go version)"

View File

@ -17,8 +17,8 @@
set -eux -o pipefail
function install_gotestsum() {
sudo rm -f $(which gotestsum)
sudo PATH="$PATH" GOBIN="$GOROOT/bin" go install gotest.tools/gotestsum@v1.6.4
rm -f $(which gotestsum)
GOBIN="$GOROOT/bin" go install gotest.tools/gotestsum@v1.6.4
}
which gotestsum || install_gotestsum
which gotestsum || install_gotestsum

View File

@ -27,12 +27,16 @@ docker login -u ${DOCKERHUB_USER} -p ${DOCKERHUB_PASS}
# Make sure golang is installed and configured
./hack/jenkins/installers/check_install_golang.sh "/usr/local" || true
export GOBIN=/usr/local/go/bin
export PATH=$PATH:$GOBIN
# Let's make sure we have the newest kicbase reference
curl -L https://github.com/kubernetes/minikube/raw/master/pkg/drivers/kic/types.go --output types-head.go
# kicbase tags are of the form VERSION-TIMESTAMP-PR, so this grep finds that TIMESTAMP in the middle
# if it doesn't exist, it will just return VERSION, which is covered in the if statement below
HEAD_KIC_TIMESTAMP=$(egrep "Version =" types-head.go | cut -d \" -f 2 | cut -d "-" -f 2)
CURRENT_KIC_TS=$(egrep "Version =" pkg/drivers/kic/types.go | cut -d \" -f 2 | cut -d "-" -f 2)
CURRENT_KIC_VERSION=$(egrep "Version =" pkg/drivers/kic/types.go | cut -d \" -f 2)
CURRENT_KIC_TS=$(echo $CURRENT_KIC_VERSION | cut -d "-" -f 2)
if [[ $HEAD_KIC_TIMESTAMP != v* ]]; then
diff=$((CURRENT_KIC_TS-HEAD_KIC_TIMESTAMP))
if [[ $CURRENT_KIC_TS == v* ]] || [ $diff -lt 0 ]; then
@ -62,19 +66,33 @@ GCR_IMG=${GCR_REPO}:${KIC_VERSION}
DH_IMG=${DH_REPO}:${KIC_VERSION}
export KICBASE_IMAGE_REGISTRIES="${GCR_IMG} ${DH_IMG}"
if [ "$release" = false ]; then
# Build a new kicbase image
CIBUILD=yes make push-kic-base-image | tee kic-logs.txt
# Build a new kicbase image
CIBUILD=yes make push-kic-base-image | tee kic-logs.txt
# Abort with error message if above command failed
ec=$?
if [ $ec -gt 0 ]; then
if [ "$release" = false ]; then
gh pr comment ${ghprbPullId} --body "Hi ${ghprbPullAuthorLoginMention}, building a new kicbase image failed.
See the logs at: https://storage.cloud.google.com/minikube-builds/logs/${ghprbPullId}/${ghprbActualCommit::7}/kic_image_build.txt
"
# Abort with error message if above command failed
ec=$?
if [ $ec -gt 0 ]; then
if [ "$release" = false ]; then
gh pr comment ${ghprbPullId} --body "Hi ${ghprbPullAuthorLoginMention}, building a new kicbase image failed.
See the logs at: https://storage.cloud.google.com/minikube-builds/logs/${ghprbPullId}/${ghprbActualCommit::7}/kic_image_build.txt
"
fi
exit $ec
fi
exit $ec
else
# Install crane, it does exactly what we want it to do
go install github.com/google/go-containerregistry/cmd/crane@latest
CURRENT_GCR_REPO=$(grep "gcrRepo =" pkg/drivers/kic/types.go | cut -d \" -f 2)
CURRENT_DH_REPO=$(grep "dockerhubRepo =" pkg/drivers/kic/types.go | cut -d \" -f 2)
CURRENT_GCR_IMG=$CURRENT_GCR_REPO:$CURRENT_KIC_VERSION
CURRENT_DH_IMG=$CURRENT_DH_REPO:$CURRENT_KIC_VERSION
crane copy $CURRENT_GCR_IMG $GCR_IMG
crane copy $CURRENT_DH_IMG $DH_IMG
fi
# Retrieve the sha from the new image

View File

@ -34,19 +34,5 @@ func uploadTarball(tarballFilename string) error {
if output, err := cmd.CombinedOutput(); err != nil {
return errors.Wrapf(err, "uploading %s to GCS bucket: %v\n%s", hostPath, err, string(output))
}
// Make tarball public to all users
gcsPath := fmt.Sprintf("%s/%s", gcsDest, tarballFilename)
cmd = exec.Command("gsutil", "acl", "ch", "-u", "AllUsers:R", gcsPath)
fmt.Printf("Running: %v\n", cmd.Args)
if output, err := cmd.CombinedOutput(); err != nil {
fmt.Printf(`Failed to update ACLs on this tarball in GCS. Please run
gsutil acl ch -u AllUsers:R %s
manually to make this link public, or rerun this script to rebuild and reupload the tarball.
`, gcsPath)
return errors.Wrapf(err, "uploading %s to GCS bucket: %v\n%s", hostPath, err, string(output))
}
return nil
}

View File

@ -179,12 +179,23 @@ func EnableOrDisableAddon(cc *config.ClusterConfig, name string, val string) err
exit.Error(reason.GuestCpConfig, "Error getting primary control plane", err)
}
// maintain backwards compatibility for ingress and ingress-dns addons with k8s < v1.19
if strings.HasPrefix(name, "ingress") && enable {
if err := supportLegacyIngress(addon, *cc); err != nil {
return err
}
}
// Persist images even if the machine is running so starting gets the correct images.
images, customRegistries, err := assets.SelectAndPersistImages(addon, cc)
if err != nil {
exit.Error(reason.HostSaveProfile, "Failed to persist images", err)
}
if cc.KubernetesConfig.ImageRepository == "registry.cn-hangzhou.aliyuncs.com/google_containers" {
images, customRegistries = assets.FixAddonImagesAndRegistries(addon, images, customRegistries)
}
mName := config.MachineName(*cc, cp)
host, err := machine.LoadHost(api, mName)
if err != nil || !machine.IsRunning(api, mName) {
@ -225,9 +236,6 @@ func addonSpecificChecks(cc *config.ClusterConfig, name string, enable bool, run
out.Styled(style.Tip, `After the addon is enabled, please run "minikube tunnel" and your ingress resources would be available at "127.0.0.1"`)
}
}
if err := supportLegacyIngress(cc); err != nil {
return false, err
}
}
if strings.HasPrefix(name, "istio") && enable {
@ -263,7 +271,7 @@ func addonSpecificChecks(cc *config.ClusterConfig, name string, enable bool, run
}
// If the gcp-auth credentials haven't been mounted in, don't start the pods
if name == "gcp-auth" {
if name == "gcp-auth" && enable {
rr, err := runner.RunCmd(exec.Command("cat", credentialsPath))
if err != nil || rr.Stdout.String() == "" {
return true, nil
@ -286,30 +294,36 @@ func isAddonAlreadySet(cc *config.ClusterConfig, addon *assets.Addon, enable boo
return false
}
// maintain backwards compatibility with k8s < v1.19
// by replacing images with old versions if custom ones are not already provided
func supportLegacyIngress(cc *config.ClusterConfig) error {
// maintain backwards compatibility for ingress and ingress-dns addons with k8s < v1.19 by replacing default addons' images with compatible versions
func supportLegacyIngress(addon *assets.Addon, cc config.ClusterConfig) error {
v, err := util.ParseKubernetesVersion(cc.KubernetesConfig.KubernetesVersion)
if err != nil {
return errors.Wrap(err, "parsing Kubernetes version")
}
if semver.MustParseRange("<1.19.0")(v) {
imgs := map[string]string{
// https://github.com/kubernetes/ingress-nginx/blob/f3c50698d98299b1a61f83cb6c4bb7de0b71fb4b/deploy/static/provider/kind/deploy.yaml#L327
"IngressController": "ingress-nginx/controller:v0.49.0@sha256:e9707504ad0d4c119036b6d41ace4a33596139d3feb9ccb6617813ce48c3eeef",
// issues: https://github.com/kubernetes/ingress-nginx/issues/7418 and https://github.com/jet/kube-webhook-certgen/issues/30
"KubeWebhookCertgenCreate": "docker.io/jettech/kube-webhook-certgen:v1.5.1@sha256:950833e19ade18cd389d647efb88992a7cc077abedef343fa59e012d376d79b7",
"KubeWebhookCertgenPatch": "docker.io/jettech/kube-webhook-certgen:v1.5.1@sha256:950833e19ade18cd389d647efb88992a7cc077abedef343fa59e012d376d79b7",
}
if cc.CustomAddonImages == nil {
cc.CustomAddonImages = map[string]string{}
}
for name, path := range imgs {
if _, exists := cc.CustomAddonImages[name]; !exists {
cc.CustomAddonImages[name] = path
if addon.Name() == "ingress" {
addon.Images = map[string]string{
// https://github.com/kubernetes/ingress-nginx/blob/0a2ec01eb4ec0e1b29c4b96eb838a2e7bfe0e9f6/deploy/static/provider/kind/deploy.yaml#L328
"IngressController": "ingress-nginx/controller:v0.49.3@sha256:35fe394c82164efa8f47f3ed0be981b3f23da77175bbb8268a9ae438851c8324",
// issues: https://github.com/kubernetes/ingress-nginx/issues/7418 and https://github.com/jet/kube-webhook-certgen/issues/30
"KubeWebhookCertgenCreate": "docker.io/jettech/kube-webhook-certgen:v1.5.1@sha256:950833e19ade18cd389d647efb88992a7cc077abedef343fa59e012d376d79b7",
"KubeWebhookCertgenPatch": "docker.io/jettech/kube-webhook-certgen:v1.5.1@sha256:950833e19ade18cd389d647efb88992a7cc077abedef343fa59e012d376d79b7",
}
addon.Registries = map[string]string{
"IngressController": "k8s.gcr.io",
}
return nil
}
if addon.Name() == "ingress-dns" {
addon.Images = map[string]string{
"IngressDNS": "cryptexlabs/minikube-ingress-dns:0.3.0@sha256:e252d2a4c704027342b303cc563e95d2e71d2a0f1404f55d676390e28d5093ab",
}
addon.Registries = nil
return nil
}
return fmt.Errorf("supportLegacyIngress called for unexpected addon %q - nothing to do here", addon.Name())
}
return nil
}

View File

@ -41,6 +41,11 @@ func kubectlCommand(cc *config.ClusterConfig, files []string, enable bool) *exec
}
args := []string{fmt.Sprintf("KUBECONFIG=%s", path.Join(vmpath.GuestPersistentDir, "kubeconfig")), kubectlBinary, kubectlAction}
if !enable {
// --ignore-not-found just ignores when we try to delete a resource that is already gone,
// like a completed job with a ttlSecondsAfterFinished
args = append(args, "--ignore-not-found")
}
for _, f := range files {
args = append(args, []string{"-f", f}...)
}

View File

@ -39,7 +39,7 @@ func TestKubectlCommand(t *testing.T) {
description: "disable an addon",
files: []string{"a", "b"},
enable: false,
expected: "sudo KUBECONFIG=/var/lib/minikube/kubeconfig /var/lib/minikube/binaries/v1.17.0/kubectl delete -f a -f b",
expected: "sudo KUBECONFIG=/var/lib/minikube/kubeconfig /var/lib/minikube/binaries/v1.17.0/kubectl delete --ignore-not-found -f a -f b",
},
}

View File

@ -212,10 +212,14 @@ func dockerNetworkInspect(name string) (netInfo, error) {
return info, nil
}
var podmanInspectGetter = func(name string) (*RunResult, error) {
cmd := exec.Command(Podman, "network", "inspect", name, "--format", `{{range .plugins}}{{if eq .type "bridge"}}{{(index (index .ipam.ranges 0) 0).subnet}},{{(index (index .ipam.ranges 0) 0).gateway}}{{end}}{{end}}`)
return runCmd(cmd)
}
func podmanNetworkInspect(name string) (netInfo, error) {
var info = netInfo{name: name}
cmd := exec.Command(Podman, "network", "inspect", name, "--format", `{{range .plugins}}{{if eq .type "bridge"}}{{(index (index .ipam.ranges 0) 0).subnet}},{{(index (index .ipam.ranges 0) 0).gateway}}{{end}}{{end}}`)
rr, err := runCmd(cmd)
rr, err := podmanInspectGetter(name)
if err != nil {
logDockerNetworkInspect(Podman, name)
if strings.Contains(rr.Output(), "no such network") {
@ -225,18 +229,15 @@ func podmanNetworkInspect(name string) (netInfo, error) {
return info, err
}
output := rr.Stdout.String()
output := strings.TrimSpace(rr.Stdout.String())
if output == "" {
return info, fmt.Errorf("no bridge network found for %s", name)
}
// results looks like 172.17.0.0/16,172.17.0.1,1500
vals := strings.Split(strings.TrimSpace(output), ",")
if len(vals) == 0 {
return info, fmt.Errorf("empty list network inspect: %q", rr.Output())
}
vals := strings.Split(output, ",")
if len(vals) > 0 {
if len(vals) >= 2 {
info.gateway = net.ParseIP(vals[1])
}

View File

@ -69,15 +69,76 @@ func TestDockerInspect(t *testing.T) {
}
if netInfo.mtu != tc.mtu {
t.Errorf("Expected not to have MTU as %v but got %v", tc.mtu, netInfo.mtu)
t.Errorf("Expected MTU to be %v but got %v", tc.mtu, netInfo.mtu)
}
if !netInfo.gateway.Equal(net.ParseIP(tc.gateway)) {
t.Errorf("Expected not to have gateway as %v but got %v", tc.gateway, netInfo.gateway)
t.Errorf("Expected gateway to be %v but got %v", tc.gateway, netInfo.gateway)
}
if !netInfo.subnet.IP.Equal(net.ParseIP(tc.subnetIP)) {
t.Errorf("Expected not to have subnet as %v but got %v", tc.subnetIP, netInfo.gateway)
t.Errorf("Expected subnet to be %v but got %v", tc.subnetIP, netInfo.subnet.IP)
}
})
}
}
var podmanResponse string
var podmanInspectGetterMock = func(name string) (*RunResult, error) {
var responseInBytes bytes.Buffer
responseInBytes.WriteString(podmanResponse)
response := &RunResult{Stdout: responseInBytes}
return response, nil
}
func TestPodmanInspect(t *testing.T) {
var emptyGateway net.IP
gateway := net.ParseIP("172.17.0.1")
_, subnetIP, err := net.ParseCIDR("172.17.0.0/16")
if err != nil {
t.Fatalf("failed to parse CIDR: %v", err)
}
var tests = []struct {
name string
podmanInspectResponse string
gateway net.IP
subnetIP string
}{
{
name: "WithGateway",
podmanInspectResponse: "172.17.0.0/16,172.17.0.1",
gateway: gateway,
subnetIP: subnetIP.String(),
},
{
name: "WithoutGateway",
podmanInspectResponse: "172.17.0.0/16",
gateway: emptyGateway,
subnetIP: subnetIP.String(),
},
}
for _, tc := range tests {
t.Run(tc.name, func(t *testing.T) {
podmanInspectResponse := tc.podmanInspectResponse
// setting up mock funcs
podmanResponse = podmanInspectResponse
podmanInspectGetter = podmanInspectGetterMock
netInfo, err := podmanNetworkInspect("m2")
if err != nil {
t.Errorf("Expected not to have error but got %v", err)
}
if !netInfo.gateway.Equal(tc.gateway) {
t.Errorf("Expected gateway to be %v but got %v", tc.gateway, netInfo.gateway)
}
if netInfo.subnet.String() != tc.subnetIP {
t.Errorf("Expected subnet to be %v but got %v", tc.subnetIP, netInfo.subnet)
}
})
}

View File

@ -24,13 +24,13 @@ import (
const (
// Version is the current version of kic
Version = "v0.0.27-1633027942-12081"
Version = "v0.0.28"
// SHA of the kic base image
baseImageSHA = "4780f1897569d2bf77aafb3d133a08d42b4fe61127f06fcfc90c2c5d902d893c"
// The name of the GCR kicbase repository
gcrRepo = "gcr.io/k8s-minikube/kicbase-builds"
gcrRepo = "gcr.io/k8s-minikube/kicbase"
// The name of the Dockerhub kicbase repository
dockerhubRepo = "docker.io/kicbase/build"
dockerhubRepo = "docker.io/kicbase/stable"
)
var (

View File

@ -238,12 +238,12 @@ var Addons = map[string]*Addon{
"ingress-deploy.yaml",
"0640"),
}, false, "ingress", "", map[string]string{
// https://github.com/kubernetes/ingress-nginx/blob/557604f4ef526f7755d36089b617bc7686c389f9/deploy/static/provider/kind/deploy.yaml#L323
"IngressController": "ingress-nginx/controller:v1.0.0-beta.3@sha256:44a7a06b71187a4529b0a9edee5cc22bdf71b414470eff696c3869ea8d90a695",
// https://github.com/kubernetes/ingress-nginx/blob/557604f4ef526f7755d36089b617bc7686c389f9/deploy/static/provider/kind/deploy.yaml#L612
"KubeWebhookCertgenCreate": "k8s.gcr.io/ingress-nginx/kube-webhook-certgen:v1.0@sha256:f3b6b39a6062328c095337b4cadcefd1612348fdd5190b1dcbcb9b9e90bd8068",
// https://github.com/kubernetes/ingress-nginx/blob/557604f4ef526f7755d36089b617bc7686c389f9/deploy/static/provider/kind/deploy.yaml#L660
"KubeWebhookCertgenPatch": "k8s.gcr.io/ingress-nginx/kube-webhook-certgen:v1.0@sha256:f3b6b39a6062328c095337b4cadcefd1612348fdd5190b1dcbcb9b9e90bd8068",
// https://github.com/kubernetes/ingress-nginx/blob/14f6b32032b709d3e0f614ca85954c3583c5fe3d/deploy/static/provider/kind/deploy.yaml#L330
"IngressController": "ingress-nginx/controller:v1.0.4@sha256:545cff00370f28363dad31e3b59a94ba377854d3a11f18988f5f9e56841ef9ef",
// https://github.com/kubernetes/ingress-nginx/blob/14f6b32032b709d3e0f614ca85954c3583c5fe3d/deploy/static/provider/kind/deploy.yaml#L620
"KubeWebhookCertgenCreate": "k8s.gcr.io/ingress-nginx/kube-webhook-certgen:v1.1.1@sha256:64d8c73dca984af206adf9d6d7e46aa550362b1d7a01f3a0a91b20cc67868660",
// https://github.com/kubernetes/ingress-nginx/blob/14f6b32032b709d3e0f614ca85954c3583c5fe3d/deploy/static/provider/kind/deploy.yaml#L670
"KubeWebhookCertgenPatch": "k8s.gcr.io/ingress-nginx/kube-webhook-certgen:v1.1.1@sha256:64d8c73dca984af206adf9d6d7e46aa550362b1d7a01f3a0a91b20cc67868660",
}, map[string]string{
"IngressController": "k8s.gcr.io",
}),
@ -480,7 +480,7 @@ var Addons = map[string]*Addon{
"ingress-dns-pod.yaml",
"0640"),
}, false, "ingress-dns", "", map[string]string{
"IngressDNS": "k8s-minikube/minikube-ingress-dns:0.0.1@sha256:69dc3c878c2e49ad85b70fdf9e8e6e87a1f961f42c8029e0912bebfa828ade46",
"IngressDNS": "k8s-minikube/minikube-ingress-dns:0.0.2@sha256:4abe27f9fc03fedab1d655e2020e6b165faf3bf6de1088ce6cf215a75b78f05f",
}, map[string]string{
"IngressDNS": "gcr.io",
}),
@ -723,7 +723,7 @@ func overrideDefaults(defaultMap, overrideMap map[string]string) map[string]stri
// SelectAndPersistImages selects which images to use based on addon default images, previously persisted images, and newly requested images - which are then persisted for future enables.
func SelectAndPersistImages(addon *Addon, cc *config.ClusterConfig) (images, customRegistries map[string]string, err error) {
addonDefaultImages := fixAddonImages(cc.KubernetesConfig.ImageRepository, addon.Images)
addonDefaultImages := addon.Images
if addonDefaultImages == nil {
addonDefaultImages = make(map[string]string)
}
@ -778,23 +778,6 @@ func SelectAndPersistImages(addon *Addon, cc *config.ClusterConfig) (images, cus
return images, customRegistries, err
}
// fixes addon image names according to image repository used
func fixAddonImages(repo string, images map[string]string) map[string]string {
if repo == "registry.cn-hangzhou.aliyuncs.com/google_containers" {
// for aliyun registry must strip namespace from image name, e.g.
// registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-minikube/storage-provisioner:v5 will not work
// registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner:v5 does work
newImages := make(map[string]string)
for name, image := range images {
image = strings.TrimPrefix(image, "k8s-minikube/")
image = strings.TrimPrefix(image, "kubernetesui/")
newImages[name] = image
}
return newImages
}
return images
}
// GenerateTemplateData generates template data for template assets
func GenerateTemplateData(addon *Addon, cfg config.KubernetesConfig, netInfo NetworkInfo, images, customRegistries map[string]string) interface{} {

View File

@ -0,0 +1,80 @@
/*
Copyright 2021 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package assets
import (
"encoding/json"
"fmt"
"strings"
"k8s.io/minikube/deploy/addons"
)
var AliyunMirror = loadAliyunMirror()
func loadAliyunMirror() map[string]string {
data, err := addons.AliyunMirror.ReadFile("aliyun_mirror.json")
if err != nil {
panic(fmt.Sprintf("Failed to load aliyun_mirror.json: %v", err))
}
var mirror map[string]string
err = json.Unmarshal(data, &mirror)
if err != nil {
panic(fmt.Sprintf("Failed to parse aliyun_mirror.json: %v", err))
}
return mirror
}
func FixAddonImagesAndRegistries(addon *Addon, images map[string]string, registries map[string]string) (customImages, customRegistries map[string]string) {
customImages = make(map[string]string)
customRegistries = make(map[string]string)
if images == nil {
images = addon.Images
}
if addon.Registries == nil {
addon.Registries = make(map[string]string)
}
if registries == nil {
registries = make(map[string]string)
}
for name, image := range images {
registry, found := registries[name]
if !found {
registry = addon.Registries[name]
}
img := image
if registry != "" && registry != "docker.io" {
img = registry + "/" + image
}
parts := strings.SplitN(img, ":", 2)
imageName := parts[0]
tag := parts[1]
mirror, found := AliyunMirror[imageName]
if found {
parts := strings.SplitN(mirror, "/", 2)
mirrorRegistry := parts[0]
mirrorImage := parts[1] + ":" + tag
customImages[name] = mirrorImage
customRegistries[name] = mirrorRegistry
} else {
customImages[name] = image
customRegistries[name] = registry
}
}
return customImages, customRegistries
}

View File

@ -280,7 +280,7 @@ func TestGetPrimaryControlPlane(t *testing.T) {
expectedName string
}{
{"old style", "p1", "192.168.64.75", 8443, "minikube"},
{"new style", "p2_newformat", "192.168.99.136", 8443, "m01"},
{"new style", "p2_newformat", "192.168.59.136", 8443, "m01"},
}
for _, tc := range tests {

View File

@ -13,7 +13,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -47,4 +47,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,11 +46,11 @@
"Nodes": [
{
"Name": "m01",
"IP": "192.168.99.136",
"IP": "192.168.59.136",
"Port": 8443,
"KubernetesVersion": "v1.15.0",
"ControlPlane": true,
"Worker": true
}
]
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -44,4 +44,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -44,4 +44,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -44,4 +44,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",

View File

@ -13,7 +13,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -46,4 +46,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -12,7 +12,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -45,11 +45,11 @@
"Nodes": [
{
"Name": "m01",
"IP": "192.168.99.136",
"IP": "192.168.59.136",
"Port": 8443,
"KubernetesVersion": "v1.15.0",
"ControlPlane": true,
"Worker": true
}
]
}
}

View File

@ -11,7 +11,7 @@
"DockerEnv": null,
"InsecureRegistry": null,
"RegistryMirror": null,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HypervVirtualSwitch": "",
"KVMNetwork": "default",
"KVMQemuURI": "qemu:///system",
@ -42,4 +42,4 @@
"ShouldLoadCachedImages": true,
"EnableDefaultCNI": false
}
}
}

View File

@ -34,12 +34,15 @@ var (
const (
// DefaultKubernetesVersion is the default Kubernetes version
// dont update till #10545 is solved
DefaultKubernetesVersion = "v1.22.2"
DefaultKubernetesVersion = "v1.22.3"
// NewestKubernetesVersion is the newest Kubernetes version to test against
// NOTE: You may need to update coreDNS & etcd versions in pkg/minikube/bootstrapper/images/images.go
NewestKubernetesVersion = "v1.22.3-rc.0"
NewestKubernetesVersion = "v1.22.4-rc.0"
// OldestKubernetesVersion is the oldest Kubernetes version to test against
OldestKubernetesVersion = "v1.14.0"
// NoKubernetesVersion is the version used when users does NOT want to install kubernetes
NoKubernetesVersion = "v0.0.0"
// DefaultClusterName is the default nane for the k8s cluster
DefaultClusterName = "minikube"
// DockerDaemonPort is the port Docker daemon listening inside a minikube node (vm or container).

View File

@ -32,7 +32,7 @@ import (
// binaryWithChecksumURL gets the location of a Kubernetes binary
func binaryWithChecksumURL(binaryName, version, osName, archName string) (string, error) {
base := fmt.Sprintf("https://storage.googleapis.com/kubernetes-release/release/%s/bin/%s/%s/%s", version, osName, archName, binaryName)
base := fmt.Sprintf("https://%s/kubernetes-release/release/%s/bin/%s/%s/%s", downloadHost, version, osName, archName, binaryName)
v, err := semver.Make(version[1:])
if err != nil {
return "", err

View File

@ -37,8 +37,16 @@ var (
// DownloadMock is called instead of the download implementation if not nil.
DownloadMock func(src, dst string) error
checkCache = os.Stat
aliyunMirror = "kubernetes.oss-cn-hangzhou.aliyuncs.com"
downloadHost = "storage.googleapis.com"
)
// SetAliyunMirror set the download host for Aliyun mirror
func SetAliyunMirror() {
downloadHost = aliyunMirror
}
// CreateDstDownloadMock is the default mock implementation of download.
func CreateDstDownloadMock(src, dst string) error {
if err := os.MkdirAll(filepath.Dir(dst), 0755); err != nil {

View File

@ -40,7 +40,7 @@ const fileScheme = "file"
// DefaultISOURLs returns a list of ISO URL's to consult by default, in priority order
func DefaultISOURLs() []string {
v := version.GetISOVersion()
isoBucket := "minikube-builds/iso/12081"
isoBucket := "minikube/iso"
return []string{
fmt.Sprintf("https://storage.googleapis.com/%s/minikube-%s.iso", isoBucket, v),
fmt.Sprintf("https://github.com/kubernetes/minikube/releases/download/%s/minikube-%s.iso", v, v),

View File

@ -23,7 +23,9 @@ import (
"fmt"
"net/http"
"os"
"path"
"path/filepath"
"strings"
"cloud.google.com/go/storage"
"google.golang.org/api/option"
@ -88,7 +90,7 @@ func TarballPath(k8sVersion, containerRuntime string) string {
// remoteTarballURL returns the URL for the remote tarball in GCS
func remoteTarballURL(k8sVersion, containerRuntime string) string {
return fmt.Sprintf("https://storage.googleapis.com/%s/%s", PreloadBucket, TarballName(k8sVersion, containerRuntime))
return fmt.Sprintf("https://%s/%s/%s", downloadHost, PreloadBucket, TarballName(k8sVersion, containerRuntime))
}
func setPreloadState(k8sVersion, containerRuntime string, value bool) {
@ -282,3 +284,29 @@ var ensureChecksumValid = func(k8sVersion, containerRuntime, targetPath string,
return nil
}
// CleanUpOlderPreloads deletes preload files beloning to older minikube versions
// checks the current preload version and then if the saved tar file is belongs to older minikube it will delete it
// in case of failure only logs to the user
func CleanUpOlderPreloads() {
files, err := os.ReadDir(targetDir())
if err != nil {
klog.Warningf("Failed to list preload files: %v", err)
}
for _, file := range files {
splited := strings.Split(file.Name(), "-")
if len(splited) < 4 {
continue
}
ver := splited[3]
if ver != PreloadVersion {
fn := path.Join(targetDir(), file.Name())
klog.Infof("deleting older generation preload %s", fn)
err := os.Remove(fn)
if err != nil {
klog.Warningf("Failed to clean up older preload files, consider running `minikube delete --all --purge`")
}
}
}
}

View File

@ -331,7 +331,6 @@ func fixRemoteImageName(ref name.Reference, imgName string) (name.Reference, str
image = strings.TrimPrefix(image, "k8s-minikube/")
image = strings.TrimPrefix(image, "kubernetesui/")
image = strings.TrimPrefix(image, "coredns/")
image = strings.ReplaceAll(image, "coredns:v", "coredns:")
remoteRef, err := name.ParseReference(aliyunMirror+image, name.WeakValidation)
if err != nil {
return nil, "", err

View File

@ -559,7 +559,7 @@ func minikubeConfig(config *api.Config) {
// cluster
clusterName := "minikube"
cluster := api.NewCluster()
cluster.Server = "https://192.168.99.100:" + strconv.Itoa(constants.APIServerPort)
cluster.Server = "https://192.168.59.100:" + strconv.Itoa(constants.APIServerPort)
cluster.CertificateAuthority = "/home/tux/.minikube/apiserver.crt"
config.Clusters[clusterName] = cluster

View File

@ -32,7 +32,7 @@ import (
const vboxConfig = `
{
"IPAddress": "192.168.99.101",
"IPAddress": "192.168.59.101",
"MachineName": "minikube",
"SSHUser": "docker",
"SSHPort": 33627,
@ -50,7 +50,7 @@ const vboxConfig = `
"Boot2DockerURL": "file:///home/sundarp/.minikube/cache/iso/minikube-v1.0.6.iso",
"Boot2DockerImportVM": "",
"HostDNSResolver": false,
"HostOnlyCIDR": "192.168.99.1/24",
"HostOnlyCIDR": "192.168.59.1/24",
"HostOnlyNicType": "82540EM",
"HostOnlyPromiscMode": "deny",
"UIType": "headless",

View File

@ -88,6 +88,10 @@ type Starter struct {
// Start spins up a guest and starts the Kubernetes node.
func Start(starter Starter, apiServer bool) (*kubeconfig.Settings, error) {
var kcs *kubeconfig.Settings
if starter.Node.KubernetesVersion == constants.NoKubernetesVersion { // do not bootstrap cluster if --no-kubernetes
return kcs, config.Write(viper.GetString(config.ProfileName), starter.Cfg)
}
// wait for preloaded tarball to finish downloading before configuring runtimes
waitCacheRequiredImages(&cacheGroup)
@ -115,7 +119,6 @@ func Start(starter Starter, apiServer bool) (*kubeconfig.Settings, error) {
}
var bs bootstrapper.Bootstrapper
var kcs *kubeconfig.Settings
if apiServer {
// Must be written before bootstrap, otherwise health checks may flake due to stale IP
kcs = setupKubeconfig(starter.Host, starter.Cfg, starter.Node, starter.Cfg.Name)
@ -286,10 +289,17 @@ func joinCluster(starter Starter, cpBs bootstrapper.Bootstrapper, bs bootstrappe
func Provision(cc *config.ClusterConfig, n *config.Node, apiServer bool, delOnFail bool) (command.Runner, bool, libmachine.API, *host.Host, error) {
register.Reg.SetStep(register.StartingNode)
name := config.MachineName(*cc, *n)
if apiServer {
out.Step(style.ThumbsUp, "Starting control plane node {{.name}} in cluster {{.cluster}}", out.V{"name": name, "cluster": cc.Name})
// for sake of trasnlation process be easy we make the code a bit more verbose and the if statements may seem unnecessary
if cc.KubernetesConfig.KubernetesVersion == constants.NoKubernetesVersion {
out.Step(style.ThumbsUp, "Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}", out.V{"name": name, "cluster": cc.Name})
} else {
out.Step(style.ThumbsUp, "Starting node {{.name}} in cluster {{.cluster}}", out.V{"name": name, "cluster": cc.Name})
if apiServer {
out.Step(style.ThumbsUp, "Starting control plane node {{.name}} in cluster {{.cluster}}", out.V{"name": name, "cluster": cc.Name})
} else {
out.Step(style.ThumbsUp, "Starting worker node {{.name}} in cluster {{.cluster}}", out.V{"name": name, "cluster": cc.Name})
}
}
if driver.IsKIC(cc.Driver) {

View File

@ -21,4 +21,9 @@ const (
GithubMinikubeReleasesURL = "https://storage.googleapis.com/minikube/releases.json"
// GithubMinikubeBetaReleasesURL is the URL of the minikube Github beta releases JSON file
GithubMinikubeBetaReleasesURL = "https://storage.googleapis.com/minikube/releases-beta.json"
// GithubMinikubeReleasesAliyunURL is the URL of the minikube github releases JSON file from Aliyun Mirror
GithubMinikubeReleasesAliyunURL = "https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases.json"
// GithubMinikubeBetaReleasesAliyunURL is the URL of the minikube Github beta releases JSON file
GithubMinikubeBetaReleasesAliyunURL = "https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases-beta.json"
)

View File

@ -47,6 +47,11 @@ func MaybePrintUpdateTextFromGithub() {
maybePrintUpdateText(GithubMinikubeReleasesURL, GithubMinikubeBetaReleasesURL, lastUpdateCheckFilePath)
}
// MaybePrintUpdateTextFromGithub prints update text if needed, from Aliyun mirror
func MaybePrintUpdateTextFromAliyunMirror() {
maybePrintUpdateText(GithubMinikubeReleasesAliyunURL, GithubMinikubeBetaReleasesAliyunURL, lastUpdateCheckFilePath)
}
func maybePrintUpdateText(latestReleasesURL string, betaReleasesURL string, lastUpdatePath string) {
latestVersion, err := latestVersionFromURL(latestReleasesURL)
if err != nil {

View File

@ -134,13 +134,13 @@ func BoxedErr(format string, a ...V) {
}
// BoxedWithConfig writes a templated message in a box with customized style config to stdout
func BoxedWithConfig(cfg box.Config, st style.Enum, title string, format string, a ...V) {
func BoxedWithConfig(cfg box.Config, st style.Enum, title string, text string, a ...V) {
if st != style.None {
title = Sprintf(st, title)
}
// need to make sure no newlines are in the title otherwise box-cli-maker panics
title = strings.ReplaceAll(title, "\n", "")
boxedCommon(String, cfg, title, format, a...)
boxedCommon(String, cfg, title, text, a...)
}
// Sprintf is used for returning the string (doesn't write anything)

View File

@ -334,8 +334,9 @@ var providerIssues = []match{
Kind: Kind{
ID: "PR_HYPERKIT_VMNET_FRAMEWORK",
ExitCode: ExProviderError,
Advice: "Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver",
Issues: []int{6028, 5594},
Advice: `Hyperkit networking is broken. Try disabling Internet Sharing: System Preference > Sharing > Internet Sharing.
Alternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.`,
Issues: []int{6028, 5594},
},
Regexp: re(`error from vmnet.framework: -1`),
GOOS: []string{"darwin"},

View File

@ -364,9 +364,9 @@ func TestOptionallyHttpsFormattedUrlString(t *testing.T) {
}{
{
description: "no https for http schemed with no https option",
bareURLString: "http://192.168.99.100:30563",
bareURLString: "http://192.168.59.100:30563",
https: false,
expectedHTTPSFormattedURLString: "http://192.168.99.100:30563",
expectedHTTPSFormattedURLString: "http://192.168.59.100:30563",
expectedIsHTTPSchemedURL: true,
},
{
@ -378,9 +378,9 @@ func TestOptionallyHttpsFormattedUrlString(t *testing.T) {
},
{
description: "https for http schemed with https option",
bareURLString: "http://192.168.99.100:30563",
bareURLString: "http://192.168.59.100:30563",
https: true,
expectedHTTPSFormattedURLString: "https://192.168.99.100:30563",
expectedHTTPSFormattedURLString: "https://192.168.59.100:30563",
expectedIsHTTPSchemedURL: true,
},
{
@ -568,7 +568,7 @@ func TestGetCoreClient(t *testing.T) {
mockK8sConfig := `apiVersion: v1
clusters:
- cluster:
server: https://192.168.99.102:8443
server: https://192.168.59.102:8443
name: minikube
contexts:
- context:

View File

@ -119,18 +119,18 @@ Network Destination Netmask Gateway Interface Metric
192.168.56.0 255.255.255.0 On-link 192.168.56.1 281
192.168.56.1 255.255.255.255 On-link 192.168.56.1 281
192.168.56.255 255.255.255.255 On-link 192.168.56.1 281
192.168.99.0 255.255.255.0 On-link 192.168.99.1 281
192.168.99.1 255.255.255.255 On-link 192.168.99.1 281
192.168.59.0 255.255.255.0 On-link 192.168.59.1 281
192.168.59.1 255.255.255.255 On-link 192.168.59.1 281
10.211.55.0 255.255.255.0 192.168.1.2 10.211.55.3 281
192.168.99.255 255.255.255.255 On-link 192.168.99.1 281
192.168.59.255 255.255.255.255 On-link 192.168.59.1 281
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 10.211.55.3 281
224.0.0.0 240.0.0.0 On-link 192.168.56.1 281
224.0.0.0 240.0.0.0 On-link 192.168.99.1 281
224.0.0.0 240.0.0.0 On-link 192.168.59.1 281
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 10.211.55.3 281
255.255.255.255 255.255.255.255 On-link 192.168.56.1 281
255.255.255.255 255.255.255.255 On-link 192.168.99.1 281
255.255.255.255 255.255.255.255 On-link 192.168.59.1 281
===========================================================================
Persistent Routes:
None`

View File

@ -200,7 +200,7 @@ func setupBridge(t *tunnel) {
return
}
iface := string(response)
pattern := regexp.MustCompile(`.*member: (en\d+) flags=.*`)
pattern := regexp.MustCompile(`.*member: ((?:vm)?en(?:et)?\d+) flags=.*`)
submatch := pattern.FindStringSubmatch(iface)
if len(submatch) != 2 {
t.status.RouteError = fmt.Errorf("couldn't find member in bridge100 interface: %s", iface)

View File

@ -94,7 +94,7 @@ func TestGenerateSignedCert(t *testing.T) {
certPath := filepath.Join(tmpDir, "cert")
keyPath := filepath.Join(tmpDir, "key")
ips := []net.IP{net.ParseIP("192.168.99.100"), net.ParseIP("10.0.0.10")}
ips := []net.IP{net.ParseIP("192.168.59.100"), net.ParseIP("10.0.0.10")}
alternateDNS := []string{"kubernetes.default.svc.cluster.local", "kubernetes.default"}
var tests = []struct {

0
site/.hugo_build.lock Normal file
View File

View File

@ -11,7 +11,7 @@ minikube quickly sets up a local Kubernetes cluster on macOS, Linux, and Windows
![Screenshot](/images/screenshot.png)
🎉 Latest Release: v1.23.2 - Sep 21, 2021 ([changelog](https://github.com/kubernetes/minikube/blob/master/CHANGELOG.md))
🎉 Latest Release: v1.24.0 - Nov 05, 2021 ([changelog](https://github.com/kubernetes/minikube/blob/master/CHANGELOG.md))
## Highlights

View File

@ -0,0 +1,7 @@
---
title: "v1.24.0 Benchmark"
linkTitle: "v1.24.0 Benchmark"
weight: -20211105
---
![time-to-k8s](/images/benchmarks/timeToK8s/v1.24.0.png)

View File

@ -26,7 +26,7 @@ minikube start [flags]
--apiserver-names strings A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine
--apiserver-port int The apiserver listening port (default 8443)
--auto-update-drivers If set, automatically updates drivers to the latest version. Defaults to true. (default true)
--base-image string The base image to use for docker/podman drivers. Intended for local development. (default "gcr.io/k8s-minikube/kicbase-builds:v0.0.27-1633027942-12081@sha256:4780f1897569d2bf77aafb3d133a08d42b4fe61127f06fcfc90c2c5d902d893c")
--base-image string The base image to use for docker/podman drivers. Intended for local development. (default "gcr.io/k8s-minikube/kicbase:v0.0.28@sha256:4780f1897569d2bf77aafb3d133a08d42b4fe61127f06fcfc90c2c5d902d893c")
--cache-images If true, cache docker images for the current bootstrapper and load them into the machine. Always false with --driver=none. (default true)
--cert-expiration duration Duration until minikube certificate expiration, defaults to three years (26280h). (default 26280h0m0s)
--cni string CNI plug-in to use. Valid options: auto, bridge, calico, cilium, flannel, kindnet, or path to a CNI manifest (default: auto)
@ -54,7 +54,7 @@ minikube start [flags]
--force Force minikube to perform possibly dangerous operations
--force-systemd If set, force the container runtime to use systemd as cgroup manager. Defaults to false.
--host-dns-resolver Enable host resolver for NAT DNS requests (virtualbox driver only) (default true)
--host-only-cidr string The CIDR to be used for the minikube VM (virtualbox driver only) (default "192.168.99.1/24")
--host-only-cidr string The CIDR to be used for the minikube VM (virtualbox driver only) (default "192.168.59.1/24")
--host-only-nic-type string NIC Type used for host only network. One of Am79C970A, Am79C973, 82540EM, 82543GC, 82545EM, or virtio (virtualbox driver only) (default "virtio")
--hyperkit-vpnkit-sock string Location of the VPNKit socket used for networking. If empty, disables Hyperkit VPNKitSock, if 'auto' uses Docker for Mac VPNKit connection, otherwise uses the specified VSock (hyperkit driver only)
--hyperkit-vsock-ports strings List of guest VSock ports that should be exposed as sockets on the host (hyperkit driver only)
@ -66,9 +66,9 @@ minikube start [flags]
--insecure-registry strings Insecure Docker registries to pass to the Docker daemon. The default service CIDR range will automatically be added.
--install-addons If set, install addons. Defaults to true. (default true)
--interactive Allow user prompts for more information (default true)
--iso-url strings Locations to fetch the minikube ISO from. (default [https://storage.googleapis.com/minikube-builds/iso/12081/minikube-v1.23.1-1633115168-12081.iso,https://github.com/kubernetes/minikube/releases/download/v1.23.1-1633115168-12081/minikube-v1.23.1-1633115168-12081.iso,https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.23.1-1633115168-12081.iso])
--iso-url strings Locations to fetch the minikube ISO from. (default [https://storage.googleapis.com/minikube/iso/minikube-v1.24.0.iso,https://github.com/kubernetes/minikube/releases/download/v1.24.0/minikube-v1.24.0.iso,https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.24.0.iso])
--keep-context This will keep the existing kubectl context and will create a minikube context.
--kubernetes-version string The Kubernetes version that the minikube VM will use (ex: v1.2.3, 'stable' for v1.22.2, 'latest' for v1.22.3-rc.0). Defaults to 'stable'.
--kubernetes-version string The Kubernetes version that the minikube VM will use (ex: v1.2.3, 'stable' for v1.22.3, 'latest' for v1.22.4-rc.0). Defaults to 'stable'.
--kvm-gpu Enable experimental NVIDIA GPU support in minikube
--kvm-hidden Hide the hypervisor signature from the guest in minikube (kvm2 driver only)
--kvm-network string The KVM default network name. (kvm2 driver only) (default "default")
@ -85,6 +85,7 @@ minikube start [flags]
--network-plugin string Kubelet network plug-in to use (default: auto)
--nfs-share strings Local folders to share with Guest via NFS mounts (hyperkit driver only)
--nfs-shares-root string Where to root the NFS Shares, defaults to /nfsshares (hyperkit driver only) (default "/nfsshares")
--no-kubernetes If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)
--no-vtx-check Disable checking for the availability of hardware virtualization before the vm is started (virtualbox driver only)
-n, --nodes int The number of nodes to spin up. Defaults to 1. (default 1)
-o, --output string Format to print stdout in. Options include: [text,json] (default "text")

View File

@ -21,3 +21,4 @@ description: >
|MacOS|hyperkit|docker|[Hyperkit_macOS](https://storage.googleapis.com/minikube-flake-rate/flake_chart.html?env=Hyperkit_macOS)|
|Windows|docker|docker|[Docker_Windows](https://storage.googleapis.com/minikube-flake-rate/flake_chart.html?env=Docker_Windows)|
|Windows|hyperv|docker|[Hyper-V_Windows](https://storage.googleapis.com/minikube-flake-rate/flake_chart.html?env=Hyper-V_Windows)|
|Cloud Shell|docker|docker|[Docker_Cloud_Shell](https://storage.googleapis.com/minikube-flake-rate/flake_chart.html?env=Docker_Cloud_Shell)|

View File

@ -81,26 +81,21 @@ Tests are typically read with a great air of skepticism, because chances are the
These are Kubernetes tests that run against an arbitrary cluster and exercise a wide range of Kubernetes features.
You can run these against minikube by following these steps:
* Clone the Kubernetes repo somewhere on your system.
* Run `make quick-release` in the k8s repo.
* Start up a minikube cluster with: `minikube start`.
* Set following two environment variables:
Install [docker](https://docs.docker.com/engine/install/)
Install [kubectl](https://v1-18.docs.kubernetes.io/docs/tasks/tools/install-kubectl/)
Clone the [minikube repo](https://github.com/kubernetes/minikube)
```shell
export KUBECONFIG=$HOME/.kube/config
export KUBERNETES_CONFORMANCE_TEST=y
## Compile the latest minikube binary
```console
% cd <minikube dir>
% make
```
* Run the tests (from the k8s repo):
## Trigger the tests and get back the results
```shell
go run hack/e2e.go -v --test --test_args="--ginkgo.focus=\[Conformance\]" --check-version-skew=false
```console
% cd <minikube dir>
./hack/conformance_tests.sh out/minikube --driver=docker --container-runtimer=docker --kubernetes-version=stable
```
To run a specific conformance test, you can use the `ginkgo.focus` flag to filter the set using a regular expression.
The `hack/e2e.go` wrapper and the `e2e.sh` wrappers have a little trouble with quoting spaces though, so use the `\s` regular expression character instead.
For example, to run the test `should update annotations on modification [Conformance]`, use following command:
```shell
go run hack/e2e.go -v --test --test_args="--ginkgo.focus=should\supdate\sannotations\son\smodification" --check-version-skew=false
```
This script will run the latest sonobuoy against a minikube cluster with two nodes and the provided parameters.

View File

@ -403,6 +403,15 @@ verifies files and packges installed inside minikube ISO/Base image
## TestGvisorAddon
tests the functionality of the gVisor addon
## TestIngressAddonLegacy
tests ingress and ingress-dns addons with legacy k8s version <1.19
#### validateIngressAddonActivation
tests ingress addon activation
#### validateIngressDNSAddonActivation
tests ingress-dns addon activation
## TestJSONOutput
makes sure json output works properly for the start, pause, unpause, and stop commands
@ -496,6 +505,25 @@ makes sure the hairpinning (https://en.wikipedia.org/wiki/Hairpinning) is correc
try to access deployment/netcat pod using external, obtained from 'netcat' service dns resolution, IP address
should fail if hairpinMode is off
## TestNoKubernetes
tests starting minikube without Kubernetes,
for use cases where user only needs to use the container runtime (docker, containerd, crio) inside minikube
#### validateStartNoK8S
starts a minikube cluster without kubernetes started/configured
#### validateK8SNotRunning
validates that there is no kubernetes running inside minikube
#### validateStopNoK8S
validates that minikube is stopped after a --no-kubernetes start
#### validateProfileListNoK8S
validates that profile list works with --no-kubernetes
#### validateStartNoArgs
valides that minikube start with no args works
## TestChangeNoneUser
tests to make sure the CHANGE_MINIKUBE_NONE_USER environemt variable is respected
and changes the minikube file permissions from root to the correct user.

View File

@ -15,7 +15,8 @@ VirtualBox is minikube's original driver. It may not provide the fastest start-u
minikube start supports some VirtualBox specific flags:
* **`--host-only-cidr`**: The CIDR to be used for the minikube VM (default "192.168.99.1/24")
* **`--host-only-cidr`**: The CIDR to be used for the minikube VM (default "192.168.59.1/24")
* On Linux, Mac OS X and Oracle Solaris with VirtualBox >= 6.1.28, [only IP addresses in the 192.68.56.0/21 range are allowed for host-only networking by default](https://www.virtualbox.org/manual/ch06.html#network_hostonly). Passing a disallowed value to `--host-only-cidr` will result in a VirtualBox access denied error: `VBoxManage: error: Code E_ACCESSDENIED (0x80070005) - Access denied (extended info not available)`.
* **`--no-vtx-check`**: Disable checking for the availability of hardware virtualization
## Issues

View File

@ -29,6 +29,34 @@ minikube profile list
minikube profiles are meant to be isolated from one another, with their own settings and drivers. If you want to create a single cluster with multiple nodes, try the [multi-node feature]({{< ref "/docs/tutorials/multi_node" >}}) instead.
## Can I use minikube as a Docker Desktop replacement?
minikube's VM includes a Docker daemon running inside Linux for free, so you can use
`minikube docker-env` to point your terminal's Docker CLI to the Docker inside minikube.
You would need to start minikube with a VM driver, instead of docker, such as hyperkit on macOS and Hyper-V on Windows.
```
minikube start --driver=hyperv
```
Alternatively, you can use `minikube image build` instead of `minikube docker-env` and `docker build`.
## Can I start minikube without Kuberentes runninng?
Yes! If you want to use minikube only as a Docker Desktop replacement without starting Kubernetes itself, try:
```
minikube start --no-kubernetes
```
Alternatively, if you want to temporarily turn off Kubernetes, you can pause and later unpause Kubernetes
```
minikube pause
```
minikube also has an addon that automatically pauses Kubernetes after a certain amount of inactivity:
```
minikube addons enable auto-pause
```
## Docker Driver: How can I set minikube's cgroup manager?

View File

@ -20,7 +20,7 @@ If a HTTP proxy is required to access the internet, you may need to pass the pro
The NO_PROXY variable here is important: Without setting it, minikube may not be able to access resources within the VM. minikube uses two IP ranges, which should not go through the proxy:
* **192.168.99.0/24**: Used by the minikube VM. Configurable for some hypervisors via `--host-only-cidr`
* **192.168.59.0/24**: Used by the minikube VM. Configurable for some hypervisors via `--host-only-cidr`
* **192.168.39.0/24**: Used by the minikube kvm2 driver.
* **192.168.49.0/24**: Used by the minikube docker driver's first cluster.
* **10.96.0.0/12**: Used by service cluster IP's. Configurable via `--service-cluster-ip-range`
@ -34,7 +34,7 @@ One important note: If NO_PROXY is required by non-Kubernetes applications, such
```shell
export HTTP_PROXY=http://<proxy hostname:port>
export HTTPS_PROXY=https://<proxy hostname:port>
export NO_PROXY=localhost,127.0.0.1,10.96.0.0/12,192.168.99.0/24,192.168.39.0/24
export NO_PROXY=localhost,127.0.0.1,10.96.0.0/12,192.168.59.0/24,192.168.39.0/24
minikube start
```
@ -46,7 +46,7 @@ To make the exported variables permanent, consider adding the declarations to ~/
```shell
set HTTP_PROXY=http://<proxy hostname:port>
set HTTPS_PROXY=https://<proxy hostname:port>
set NO_PROXY=localhost,127.0.0.1,10.96.0.0/12,192.168.99.0/24,192.168.39.0/24
set NO_PROXY=localhost,127.0.0.1,10.96.0.0/12,192.168.59.0/24,192.168.39.0/24
minikube start
```
@ -107,7 +107,7 @@ The supplied value of `HTTPS_PROXY` is probably incorrect. Verify that this valu
minikube requires access from the host to the following IP ranges:
* **192.168.99.0/24**: Used by the minikube VM. Configurable for some hypervisors via `--host-only-cidr`
* **192.168.59.0/24**: Used by the minikube VM. Configurable for some hypervisors via `--host-only-cidr`
* **192.168.39.0/24**: Used by the minikube kvm2 driver.
* **10.96.0.0/12**: Used by service cluster IP's. Configurable via `--service-cluster-ip-range`

View File

@ -105,6 +105,13 @@ Presentations about the minikube project, mostly from the Kubernetes blog and th
* "Minikube and Three Different Local Kubernetes Learning Environments"
* Anders Björklund & Predrag Rogic
### KubeCon NA 2021 (Los Angeles, California)
* <https://www.youtube.com/watch?v=GHczvbzuVvc> (47:47)
* "A Deep Dive Into 5 years of Minikube"
* Medya Ghazizadeh
## Other conferences
### Helm Summit EU 2019 (Amsterdam, The Netherlands)

View File

@ -543,7 +543,9 @@ Alternatively, use kubectl to forward the port:
kubectl port-forward service/hello-minikube 7080:8080
```
Tada! Your application is now available at [http://localhost:7080/](http://localhost:7080/)
Tada! Your application is now available at [http://localhost:7080/](http://localhost:7080/).
You should be able to see the request metadata from nginx such as the `CLIENT VALUES`, `SERVER VALUES`, `HEADERS RECEIVED` and the `BODY` in the application output. Try changing the path of the request and observe the changes in the `CLIENT VALUES`. Similarly, you can do a POST request to the same and observe the body show up in `BODY` section of the output.
### LoadBalancer deployments

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View File

@ -34,6 +34,7 @@ import (
"testing"
"time"
"github.com/blang/semver/v4"
retryablehttp "github.com/hashicorp/go-retryablehttp"
"k8s.io/minikube/pkg/kapi"
"k8s.io/minikube/pkg/minikube/detect"
@ -47,62 +48,36 @@ func TestAddons(t *testing.T) {
defer Cleanup(t, profile, cancel)
setupSucceeded := t.Run("Setup", func(t *testing.T) {
// We don't need a dummy file is we're on GCE
if !detect.IsOnGCE() || detect.IsCloudShell() {
// Set an env var to point to our dummy credentials file
err := os.Setenv("GOOGLE_APPLICATION_CREDENTIALS", filepath.Join(*testdataDir, "gcp-creds.json"))
t.Cleanup(func() {
os.Unsetenv("GOOGLE_APPLICATION_CREDENTIALS")
})
if err != nil {
t.Fatalf("Failed setting GOOGLE_APPLICATION_CREDENTIALS env var: %v", err)
}
err = os.Setenv("GOOGLE_CLOUD_PROJECT", "this_is_fake")
t.Cleanup(func() {
os.Unsetenv("GOOGLE_CLOUD_PROJECT")
})
if err != nil {
t.Fatalf("Failed setting GOOGLE_CLOUD_PROJECT env var: %v", err)
}
// Set an env var to point to our dummy credentials file
// don't use t.Setenv because we sometimes manually unset the env var later manually
err := os.Setenv("GOOGLE_APPLICATION_CREDENTIALS", filepath.Join(*testdataDir, "gcp-creds.json"))
t.Cleanup(func() {
os.Unsetenv("GOOGLE_APPLICATION_CREDENTIALS")
})
if err != nil {
t.Fatalf("Failed setting GOOGLE_APPLICATION_CREDENTIALS env var: %v", err)
}
args := append([]string{"start", "-p", profile, "--wait=true", "--memory=4000", "--alsologtostderr", "--addons=registry", "--addons=metrics-server", "--addons=olm", "--addons=volumesnapshots", "--addons=csi-hostpath-driver"}, StartArgs()...)
err = os.Setenv("GOOGLE_CLOUD_PROJECT", "this_is_fake")
t.Cleanup(func() {
os.Unsetenv("GOOGLE_CLOUD_PROJECT")
})
if err != nil {
t.Fatalf("Failed setting GOOGLE_CLOUD_PROJECT env var: %v", err)
}
args := append([]string{"start", "-p", profile, "--wait=true", "--memory=4000", "--alsologtostderr", "--addons=registry", "--addons=metrics-server", "--addons=olm", "--addons=volumesnapshots", "--addons=csi-hostpath-driver", "--addons=gcp-auth"}, StartArgs()...)
if !NoneDriver() { // none driver does not support ingress
args = append(args, "--addons=ingress", "--addons=ingress-dns")
}
if !arm64Platform() {
args = append(args, "--addons=helm-tiller")
}
if !detect.IsOnGCE() {
args = append(args, "--addons=gcp-auth")
}
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Fatalf("%s failed: %v", rr.Command(), err)
}
// If we're running the integration tests on GCE, which is frequently the case, first check to make sure we exit out properly,
// then use force to actually test using creds.
if detect.IsOnGCE() {
args = []string{"-p", profile, "addons", "enable", "gcp-auth"}
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Errorf("%s failed: %v", rr.Command(), err)
} else {
if !detect.IsCloudShell() && !strings.Contains(rr.Output(), "It seems that you are running in GCE") {
t.Errorf("Unexpected error message: %v", rr.Output())
} else {
// ok, use force here since we are in GCE
// do not use --force unless absolutely necessary
args = append(args, "--force")
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Errorf("%s failed: %v", rr.Command(), err)
}
}
}
}
})
if !setupSucceeded {
@ -189,10 +164,23 @@ func validateIngressAddon(ctx context.Context, t *testing.T, profile string) {
t.Fatalf("failed waiting for ingress-nginx-controller : %v", err)
}
// use nginx ingress yaml that corresponds to k8s version
// default: k8s >= v1.19, ingress api v1
ingressYaml := "nginx-ingress-v1.yaml"
ingressDNSYaml := "ingress-dns-example-v1.yaml"
v, err := client.ServerVersion()
if err != nil {
t.Log("failed to get k8s version, assuming v1.19+ => ingress api v1")
} else if semver.MustParseRange("<1.19.0")(semver.MustParse(fmt.Sprintf("%s.%s.0", v.Major, v.Minor))) {
// legacy: k8s < v1.19 & ingress api v1beta1
ingressYaml = "nginx-ingress-v1beta1.yaml"
ingressDNSYaml = "ingress-dns-example-v1beta1.yaml"
}
// create networking.k8s.io/v1 ingress
createv1Ingress := func() error {
// apply networking.k8s.io/v1 ingress
rr, err := Run(t, exec.CommandContext(ctx, "kubectl", "--context", profile, "replace", "--force", "-f", filepath.Join(*testdataDir, "nginx-ingv1.yaml")))
rr, err := Run(t, exec.CommandContext(ctx, "kubectl", "--context", profile, "replace", "--force", "-f", filepath.Join(*testdataDir, ingressYaml)))
if err != nil {
return err
}
@ -246,7 +234,7 @@ func validateIngressAddon(ctx context.Context, t *testing.T, profile string) {
}
// check the ingress-dns addon here as well
rr, err = Run(t, exec.CommandContext(ctx, "kubectl", "--context", profile, "replace", "--force", "-f", filepath.Join(*testdataDir, "ingress-dns-example.yaml")))
rr, err = Run(t, exec.CommandContext(ctx, "kubectl", "--context", profile, "replace", "--force", "-f", filepath.Join(*testdataDir, ingressDNSYaml)))
if err != nil {
t.Errorf("failed to kubectl replace ingress-dns-example. args %q. %v", rr.Command(), err)
}
@ -669,15 +657,34 @@ func validateGCPAuthAddon(ctx context.Context, t *testing.T, profile string) {
got = strings.TrimSpace(rr.Stdout.String())
expected = "this_is_fake"
if detect.IsOnGCE() && !detect.IsCloudShell() {
expected = "k8s-minikube"
}
if got != expected {
t.Errorf("'printenv GOOGLE_CLOUD_PROJECT' returned %s, expected %s", got, expected)
}
disableGCPAuth := func() error {
_, err = Run(t, exec.CommandContext(ctx, Target(), "-p", profile, "addons", "disable", "gcp-auth", "--alsologtostderr", "-v=1"))
if err != nil {
return err
}
return nil
}
if err := retry.Expo(disableGCPAuth, Minutes(2), Minutes(10), 5); err != nil {
t.Errorf("failed to disable GCP auth addon: %v", err)
}
// If we're on GCE, we have proper credentials and can test the registry secrets with an artifact registry image
if detect.IsOnGCE() && !detect.IsCloudShell() {
os.Unsetenv("GOOGLE_APPLICATION_CREDENTIALS")
os.Unsetenv("GOOGLE_CLOUD_PROJECT")
args := []string{"-p", profile, "addons", "enable", "gcp-auth"}
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Errorf("%s failed: %v", rr.Command(), err)
} else if !strings.Contains(rr.Output(), "It seems that you are running in GCE") {
t.Errorf("Unexpected error message: %v", rr.Output())
}
_, err = Run(t, exec.CommandContext(ctx, "kubectl", "--context", profile, "apply", "-f", filepath.Join(*testdataDir, "private-image.yaml")))
if err != nil {
t.Fatalf("print env project: %v", err)
@ -696,23 +703,9 @@ func validateGCPAuthAddon(ctx context.Context, t *testing.T, profile string) {
t.Fatalf("print env project: %v", err)
}
// Make sure the pod is up and running, which means we successfully pulled the private image down
// 8 minutes, because 4 is not enough for images to pull in all cases.
_, err = PodWait(ctx, t, profile, "default", "integration-test=private-image-eu", Minutes(8))
if err != nil {
t.Fatalf("wait for private image: %v", err)
}
}
disableGCPAuth := func() error {
_, err = Run(t, exec.CommandContext(ctx, Target(), "-p", profile, "addons", "disable", "gcp-auth", "--alsologtostderr", "-v=1"))
if err != nil {
return err
}
return nil
}
if err := retry.Expo(disableGCPAuth, Minutes(2), Minutes(10), 5); err != nil {
t.Errorf("failed to disable GCP auth addon: %v", err)
}
}

View File

@ -25,6 +25,8 @@ import (
"strings"
"testing"
"time"
"k8s.io/minikube/pkg/drivers/kic/oci"
)
// TestCertOptions makes sure minikube certs respect the --apiserver-ips and --apiserver-names parameters
@ -70,13 +72,39 @@ func TestCertOptions(t *testing.T) {
}
// verify that the apiserver is serving on port 8555
if NeedsPortForward() { // in case of docker/podman on non-linux the port will be a "random assigned port" in kubeconfig
bin := "docker"
if PodmanDriver() {
bin = "podman"
}
rr, err = Run(t, exec.CommandContext(ctx, "kubectl", "--context", profile, "config", "view"))
if err != nil {
t.Errorf("failed to get kubectl config. args %q : %v", rr.Command(), err)
port, err := oci.ForwardedPort(bin, profile, 8555)
if err != nil {
t.Errorf("failed to inspect container for the port %v", err)
}
if port == 0 {
t.Errorf("expected to get a non-zero forwarded port but got %d", port)
}
} else {
rr, err = Run(t, exec.CommandContext(ctx, "kubectl", "--context", profile, "config", "view"))
if err != nil {
t.Errorf("failed to get kubectl config. args %q : %v", rr.Command(), err)
}
if !strings.Contains(rr.Stdout.String(), "8555") {
t.Errorf("Kubeconfig apiserver server port incorrect. Output of \n 'kubectl config view' = %q", rr.Output())
}
}
// Also check the kubeconfig inside minikube using SSH
// located at /etc/kubernetes/admin.conf
args = []string{"ssh", "-p", profile, "--", "sudo cat /etc/kubernetes/admin.conf"}
rr, err = Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Errorf("failed to SSH to minikube with args: %q : %v", rr.Command(), err)
}
if !strings.Contains(rr.Stdout.String(), "8555") {
t.Errorf("apiserver server port incorrect. Output of 'kubectl config view' = %q", rr.Output())
t.Errorf("Internal minikube kubeconfig (admin.conf) does not containe the right api port. %s", rr.Output())
}
}

View File

@ -93,8 +93,8 @@ func checkRoutePassword(t *testing.T) {
// checkDNSForward skips DNS forwarding test if runtime is not supported
func checkDNSForward(t *testing.T) {
// Not all platforms support DNS forwarding
if runtime.GOOS != "darwin" {
t.Skip("DNS forwarding is supported for darwin only now, skipping test DNS forwarding")
if runtime.GOOS != "darwin" || KicDriver() {
t.Skip("DNS forwarding is only supported for Hyperkit on Darwin, skipping test DNS forwarding")
}
}

View File

@ -0,0 +1,83 @@
//go:build integration
// +build integration
/*
Copyright 2021 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package integration
import (
"context"
"os/exec"
"testing"
)
// TestIngressAddonLegacy tests ingress and ingress-dns addons with legacy k8s version <1.19
func TestIngressAddonLegacy(t *testing.T) {
if NoneDriver() {
t.Skipf("skipping: none driver does not support ingress")
}
profile := UniqueProfileName("ingress-addon-legacy")
ctx, cancel := context.WithTimeout(context.Background(), Minutes(10))
defer Cleanup(t, profile, cancel)
t.Run("StartLegacyK8sCluster", func(t *testing.T) {
args := append([]string{"start", "-p", profile, "--kubernetes-version=v1.18.20", "--memory=4096", "--wait=true", "--alsologtostderr", "-v=5"}, StartArgs()...)
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Errorf("failed to start minikube with args: %q : %v", rr.Command(), err)
}
})
t.Run("serial", func(t *testing.T) {
tests := []struct {
name string
validator validateFunc
}{
{"ValidateIngressAddonActivation", validateIngressAddonActivation},
{"ValidateIngressDNSAddonActivation", validateIngressDNSAddonActivation},
{"ValidateIngressAddons", validateIngressAddon},
}
for _, tc := range tests {
tc := tc
if ctx.Err() == context.DeadlineExceeded {
t.Fatalf("Unable to run more tests (deadline exceeded)")
}
t.Run(tc.name, func(t *testing.T) {
tc.validator(ctx, t, profile)
})
}
})
}
// validateIngressAddonActivation tests ingress addon activation
func validateIngressAddonActivation(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)
if _, err := Run(t, exec.CommandContext(ctx, Target(), "-p", profile, "addons", "enable", "ingress", "--alsologtostderr", "-v=5")); err != nil {
t.Errorf("failed to enable ingress addon: %v", err)
}
}
// validateIngressDNSAddonActivation tests ingress-dns addon activation
func validateIngressDNSAddonActivation(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)
if _, err := Run(t, exec.CommandContext(ctx, Target(), "-p", profile, "addons", "enable", "ingress-dns", "--alsologtostderr", "-v=5")); err != nil {
t.Errorf("failed to enable ingress-dns addon: %v", err)
}
}

View File

@ -0,0 +1,138 @@
//go:build integration
// +build integration
/*
Copyright 2021 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package integration
import (
"context"
"os/exec"
"strings"
"testing"
)
// TestNoKubernetes tests starting minikube without Kubernetes,
// for use cases where user only needs to use the container runtime (docker, containerd, crio) inside minikube
func TestNoKubernetes(t *testing.T) {
MaybeParallel(t)
if NoneDriver() {
t.Skip("None driver does not need --no-kubernetes test")
}
type validateFunc func(context.Context, *testing.T, string)
profile := UniqueProfileName("NoKubernetes")
ctx, cancel := context.WithTimeout(context.Background(), Minutes(5))
defer Cleanup(t, profile, cancel)
// Serial tests
t.Run("serial", func(t *testing.T) {
tests := []struct {
name string
validator validateFunc
}{
{"Start", validateStartNoK8S},
{"VerifyK8sNotRunning", validateK8SNotRunning},
{"ProfileList", validateProfileListNoK8S},
{"Stop", validateStopNoK8S},
{"StartNoArgs", validateStartNoArgs},
{"VerifyK8sNotRunningSecond", validateK8SNotRunning},
}
for _, tc := range tests {
tc := tc
if ctx.Err() == context.DeadlineExceeded {
t.Fatalf("Unable to run more tests (deadline exceeded)")
}
t.Run(tc.name, func(t *testing.T) {
tc.validator(ctx, t, profile)
if t.Failed() && *postMortemLogs {
PostMortemLogs(t, profile)
}
})
}
})
}
// validateStartNoK8S starts a minikube cluster without kubernetes started/configured
func validateStartNoK8S(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)
args := append([]string{"start", "-p", profile, "--no-kubernetes"}, StartArgs()...)
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Fatalf("failed to start minikube with args: %q : %v", rr.Command(), err)
}
}
// validateK8SNotRunning validates that there is no kubernetes running inside minikube
func validateK8SNotRunning(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)
args := []string{"ssh", "-p", profile, "sudo systemctl is-active --quiet service kubelet"}
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err == nil {
t.Fatalf("Expected Kubelet not to be running and but it is running : %q : %v", rr.Command(), err)
}
}
// validateStopNoK8S validates that minikube is stopped after a --no-kubernetes start
func validateStopNoK8S(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)
args := []string{"stop", "-p", profile}
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Fatalf("Failed to stop minikube %q : %v", rr.Command(), err)
}
}
// validateProfileListNoK8S validates that profile list works with --no-kubernetes
func validateProfileListNoK8S(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)
args := []string{"profile", "list"}
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Fatalf("Profile list failed : %q : %v", rr.Command(), err)
}
if !strings.Contains(rr.Output(), "N/A") {
t.Fatalf("expected N/A in the profile list for kubernetes version but got : %q : %v", rr.Command(), rr.Output())
}
args = []string{"profile", "list", "--output=json"}
rr, err = Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Fatalf("Profile list --output=json failed : %q : %v", rr.Command(), err)
}
}
// validateStartNoArgs valides that minikube start with no args works
func validateStartNoArgs(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)
args := append([]string{"start", "-p", profile}, StartArgs()...)
rr, err := Run(t, exec.CommandContext(ctx, Target(), args...))
if err != nil {
t.Fatalf("failed to start minikube with args: %q : %v", rr.Command(), err)
}
}

View File

@ -0,0 +1,85 @@
# Copyright 2021 The Kubernetes Authors All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-world-app
namespace: default
spec:
selector:
matchLabels:
app: hello-world-app
template:
metadata:
labels:
app: hello-world-app
spec:
containers:
- name: hello-world-app
image: gcr.io/google-samples/hello-app:1.0
ports:
- containerPort: 8080
---
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: example-ingress
namespace: kube-system
annotations:
# needed for k8s < v1.18: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#deprecating-the-ingress-class-annotation
kubernetes.io/ingress.class: nginx
spec:
rules:
- host: hello-john.test
http:
paths:
- path: /
pathType: Prefix
backend:
serviceName: hello-world-app
servicePort: 80
- host: hello-jane.test
http:
paths:
- path: /
pathType: Prefix
backend:
serviceName: hello-world-app
servicePort: 80
---
apiVersion: v1
kind: Service
metadata:
name: hello-world-app
namespace: kube-system
spec:
type: ExternalName
externalName: hello-world-app.default.svc.cluster.local
---
apiVersion: v1
kind: Service
metadata:
name: hello-world-app
namespace: default
spec:
ports:
- name: http
port: 80
targetPort: 8080
protocol: TCP
type: NodePort
selector:
app: hello-world-app

View File

@ -2,9 +2,6 @@ apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: nginx-ingress
annotations:
# use the shared ingress-nginx
kubernetes.io/ingress.class: nginx
labels:
integration-test: ingress
spec:

View File

@ -0,0 +1,19 @@
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: nginx-ingress
annotations:
# needed for k8s < v1.18: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#deprecating-the-ingress-class-annotation
kubernetes.io/ingress.class: nginx
labels:
integration-test: ingress
spec:
rules:
- host: nginx.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
serviceName: nginx
servicePort: 80

View File

@ -155,6 +155,7 @@
"Done! kubectl is now configured to use \"{{.name}}": "Fertig! kubectl ist jetzt für die Verwendung von \"{{.name}} konfiguriert",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "",
"Done! kubectl is now configured to use \"{{.name}}__1": "Fertig! kubectl ist jetzt für die Verwendung von \"{{.name}}\" konfiguriert",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "Download abgeschlossen!",
"Downloading Kubernetes {{.version}} preload ...": "",
"Downloading VM boot image ...": "",
@ -313,7 +314,7 @@
"Group ID: {{.groupID}}": "",
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "Hypervisor-Signatur vor dem Gast in minikube verbergen (nur kvm2-Treiber)",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"IP Address to use to expose ports (docker and podman driver only)": "",
"IP address (ssh driver only)": "",
"If present, writes to the provided file instead of stdout.": "",
@ -322,6 +323,7 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "",
"If set, install addons. Defaults to true.": "",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "",
"If set, unpause all namespaces": "",
"If the above advice does not help, please let us know:": "",
@ -575,8 +577,9 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "",
"StartHost failed, but will try again: {{.error}}": "",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "",
"Starting node {{.name}} in cluster {{.cluster}}": "",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting tunnel for service {{.service}}.": "",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "",
"Starts a local kubernetes cluster": "Startet einen lokalen Kubernetes-Cluster",
"Starts a node.": "",
@ -691,6 +694,7 @@
"There's a new version for '{{.driver_executable}}'. Please consider upgrading. {{.documentation_url}}": "Es gibt eine neue Version für '{{.driver_executable}}'. Bitte erwägen Sie ein Upgrade. {{.documentation_url}}",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "",
"These changes will take effect upon a minikube delete and then a minikube start": "",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "Dies kann auch automatisch erfolgen, indem Sie die env var CHANGE_MINIKUBE_NONE_USER = true setzen",
"This control plane is not running! (state={{.state}})": "",
@ -743,9 +747,7 @@
"Unable to load host": "",
"Unable to load profile: {{.error}}": "",
"Unable to parse \"{{.kubernetes_version}}\": {{.error}}": "\"{{.kubernetes_version}}\" kann nicht geparst werden: {{.error}}",
"Unable to parse default Kubernetes version from constants: {{.error}}": "",
"Unable to parse memory '{{.memory}}': {{.error}}": "",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "",
"Unable to pick a default driver. Here is what was considered, in preference order:": "",
"Unable to pull images, which may be OK: {{.error}}": "Bilder können nicht abgerufen werden, was möglicherweise kein Problem darstellt: {{.error}}",
"Unable to push cached images: {{.error}}": "",

View File

@ -157,6 +157,7 @@
"Done! kubectl is now configured to use \"{{.name}}\" by default": "¡Listo! Se ha configurado kubectl para que use \"{{.name}}\" por defecto",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "",
"Done! kubectl is now configured to use \"{{.name}}__1": "¡Listo! Se ha configurado kubectl para que use \"{{.name}}__1 \n",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "Se ha completado la descarga",
"Downloading Kubernetes {{.version}} preload ...": "Descargando Kubernetes {{.version}} ...",
"Downloading VM boot image ...": "Descargando la imagen de arranque de la VM",
@ -319,7 +320,7 @@
"Group ID: {{.groupID}}": "",
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "Permite ocultar la firma del hipervisor al invitado en minikube (solo con el controlador de kvm2)",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"IP Address to use to expose ports (docker and podman driver only)": "",
"IP address (ssh driver only)": "",
"If present, writes to the provided file instead of stdout.": "",
@ -328,6 +329,7 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "",
"If set, install addons. Defaults to true.": "",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "",
"If set, unpause all namespaces": "",
"If the above advice does not help, please let us know:": "",
@ -581,8 +583,9 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "",
"StartHost failed, but will try again: {{.error}}": "",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "",
"Starting node {{.name}} in cluster {{.cluster}}": "",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting tunnel for service {{.service}}.": "",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "",
"Starts a local kubernetes cluster": "Inicia un clúster de Kubernetes local",
"Starts a node.": "",
@ -697,6 +700,7 @@
"There's a new version for '{{.driver_executable}}'. Please consider upgrading. {{.documentation_url}}": "Hay una nueva versión de \"{{.driver_executable}}\". Te recomendamos que realices la actualización. {{.documentation_url}}",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "",
"These changes will take effect upon a minikube delete and then a minikube start": "",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "El proceso se puede automatizar si se define la variable de entorno CHANGE_MINIKUBE_NONE_USER=true",
"This control plane is not running! (state={{.state}})": "",
@ -749,9 +753,7 @@
"Unable to load host": "",
"Unable to load profile: {{.error}}": "",
"Unable to parse \"{{.kubernetes_version}}\": {{.error}}": "No se ha podido analizar la versión \"{{.kubernetes_version}}\": {{.error}}",
"Unable to parse default Kubernetes version from constants: {{.error}}": "",
"Unable to parse memory '{{.memory}}': {{.error}}": "",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "",
"Unable to pick a default driver. Here is what was considered, in preference order:": "",
"Unable to pull images, which may be OK: {{.error}}": "No se ha podido recuperar imágenes, que podrían estar en buen estado: {{.error}}",
"Unable to push cached images: {{.error}}": "",

View File

@ -12,7 +12,6 @@
"- Docs https://docs.docker.com/docker-for-mac/#resources": "- Documentation https://docs.docker.com/docker-for-mac/#resources",
"- Docs https://docs.docker.com/docker-for-windows/#resources": "- Docs https://docs.docker.com/docker-for-windows/#resources",
"- Ensure your {{.driver_name}} daemon has access to enough CPU/memory resources.": "- Assurez-vous que votre démon {{.driver_name}} a accès à suffisamment de ressources CPU/mémoire.",
"- Prune unused {{.driver_name}} images, volumes and abandoned containers.": "- Nettoyer les images {{.driver_name}} non utilisées, les volumes et les conteneurs abandonnés.",
"- Prune unused {{.driver_name}} images, volumes, networks and abandoned containers.\n\n\t\t\t\t{{.driver_name}} system prune --volumes": "- Nettoyer les images {{.driver_name}} non utilisées, les volumes, les réseaux et les conteneurs abandonnées.\n\n\t\t\t\t{{.driver_name}} system prune --volumes",
"- Restart your {{.driver_name}} service": "- Redémarrer votre service {{.driver_name}}",
"- {{.logPath}}": "- {{.logPath}}",
@ -27,10 +26,7 @@
"A firewall is interfering with minikube's ability to make outgoing HTTPS requests. You may need to change the value of the HTTPS_PROXY environment variable.": "Un pare-feu interfère avec la capacité de minikube à executer des requêtes HTTPS sortantes. Vous devriez peut-être modifier la valeur de la variable d'environnement HTTPS_PROXY.",
"A firewall is likely blocking minikube from reaching the internet. You may need to configure minikube to use a proxy.": "Un pare-feu empêche probablement minikube d'accéder à Internet. Vous devriez peut-être configurer minikube pour utiliser un proxy.",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Ensemble d'adresses IP apiserver qui sont utilisées dans le certificat généré pour kubernetes. Cela peut être utilisé si vous souhaitez rendre l'apiserver disponible à l'extérieur de la machine",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Ensemble d'adresses IP apiserver qui sont utilisées dans le certificat généré pour kubernetes. Cela peut être utilisé si vous souhaitez rendre l'apiserver disponible à l'extérieur de la machine",
"A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Ensemble de noms de serveur d'API utilisés dans le certificat généré pour Kubernetes. Vous pouvez les utiliser si vous souhaitez que le serveur d'API soit disponible en dehors de la machine.",
"A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Ensemble de noms de serveur d'API utilisés dans le certificat généré pour Kubernetes. Vous pouvez les utiliser si vous souhaitez que le serveur d'API soit disponible en dehors de la machine.",
"A set of key=value pairs that describe configuration that may be passed to different components.\nThe key should be '.' separated, and the first part before the dot is the component to apply the configuration to.\nValid components are: kubelet, kubeadm, apiserver, controller-manager, etcd, proxy, scheduler\nValid kubeadm parameters:": "Ensemble de paires clé = valeur qui décrivent la configuration pouvant être transmise à différents composants.\nLa clé doit être séparée par le caractère \".\", la première partie placée avant le point étant le composant auquel la configuration est appliquée.\nVoici la liste des composants valides : apiserver, controller-manager, etcd, kubeadm, kubelet, proxy et scheduler.\nParamètres valides pour le composant kubeadm :",
"A set of key=value pairs that describe feature gates for alpha/experimental features.": "Ensemble de paires clé = valeur qui décrivent l'entrée de configuration pour des fonctionnalités alpha ou expérimentales.",
"Access the Kubernetes dashboard running within the minikube cluster": "Accéder au tableau de bord Kubernetes exécuté dans le cluster de minikube",
"Access to ports below 1024 may fail on Windows with OpenSSH clients older than v8.1. For more information, see: https://minikube.sigs.k8s.io/docs/handbook/accessing/#access-to-ports-1024-on-windows-requires-root-permission": "Accéder aux ports inférieurs à 1024 peut échouer sur Windows avec les clients OpenSSH antérieurs à v8.1. Pour plus d'information, voir: https://minikube.sigs.k8s.io/docs/handbook/accessing/#access-to-ports-1024-on-windows-requires-root-permission",
@ -52,8 +48,6 @@
"All existing scheduled stops cancelled": "Tous les arrêts programmés existants annulés",
"Allow user prompts for more information": "Autoriser les utilisateurs à saisir plus d'informations",
"Alternative image repository to pull docker images from. This can be used when you have limited access to gcr.io. Set it to \\\"auto\\\" to let minikube decide one for you. For Chinese mainland users, you may use local gcr.io mirrors such as registry.cn-hangzhou.aliyuncs.com/google_containers": "Autre dépôt d'images d'où extraire des images Docker. Il peut être utilisé en cas d'accès limité à gcr.io. Définissez-le sur \\\"auto\\\" pour permettre à minikube de choisir la valeur à votre place. Pour les utilisateurs situés en Chine continentale, vous pouvez utiliser des miroirs gcr.io locaux tels que registry.cn-hangzhou.aliyuncs.com/google_containers.",
"Amount of RAM allocated to the minikube VM (format: \u003cnumber\u003e[\u003cunit\u003e], where unit = b, k, m or g)": "Quantité de mémoire RAM allouée à la VM minikube (format : \u003cnombre\u003e[\u003cunité\u003e], où \"unité\" = b, k, m ou g).",
"Amount of RAM to allocate to Kubernetes (format: \u003cnumber\u003e[\u003cunit\u003e], where unit = b, k, m or g).": "Quantité de mémoire RAM à allouer à Kubernetes (format: \u003cnombre\u003e[\u003cunité\u003e], où unité = b, k, m ou g).",
"Amount of time to wait for a service in seconds": "Temps d'attente pour un service en secondes",
"Amount of time to wait for service in seconds": "Temps d'attente pour un service en secondes",
"Another hypervisor, such as VirtualBox, is conflicting with KVM. Please stop the other hypervisor, or use --driver to switch to it.": "Un autre hyperviseur, tel que VirtualBox, est en conflit avec KVM. Veuillez arrêter l'autre hyperviseur ou utiliser --driver pour y basculer.",
@ -99,7 +93,6 @@
"Configure environment to use minikube's Podman service": "Configurer l'environnement pour utiliser le service Podman de minikube",
"Configures the addon w/ADDON_NAME within minikube (example: minikube addons configure registry-creds). For a list of available addons use: minikube addons list": "Configure le module w/ADDON_NAME dans minikube (exemple : minikube addons configure registry-creds). Pour une liste des modules disponibles, utilisez : minikube addons list",
"Configuring RBAC rules ...": "Configuration des règles RBAC ...",
"Configuring environment for Kubernetes {{.k8sVersion}} on {{.runtime}} {{.runtimeVersion}}": "Configuration de l'environment pour Kubernetes {{.k8sVersion}} sur {{.runtime}} {{.runtimeVersion}}",
"Configuring local host environment ...": "Configuration de l'environnement de l'hôte local...",
"Configuring {{.name}} (Container Networking Interface) ...": "Configuration de {{.name}} (Container Networking Interface)...",
"Confirm that you have a working internet connection and that your VM has not run out of resources by using: 'minikube logs'": "Confirmez que vous disposez d'une connexion Internet fonctionnelle et que votre VM n'est pas à court de ressources en utilisant : 'minikube logs'",
@ -129,7 +122,6 @@
"Delete an image from the local cache.": "Supprimez une image du cache local.",
"Deletes a local Kubernetes cluster": "Supprime un cluster Kubernetes local",
"Deletes a local Kubernetes cluster. This command deletes the VM, and removes all\nassociated files.": "Supprime le cluster Kubernetes local. Cette commande supprime la VM ainsi que tous les fichiers associés.",
"Deletes a local kubernetes cluster. This command deletes the VM, and removes all\nassociated files.": "Supprime le cluster Kubernetes local. Cette commande supprime la VM ainsi que tous les fichiers associés.",
"Deletes a node from a cluster.": "Supprime un nœud d'un cluster.",
"Deleting \"{{.profile_name}}\" in {{.driver_name}} ...": "Suppression de \"{{.profile_name}}\" dans {{.driver_name}}...",
"Deleting container \"{{.name}}\" ...": "Suppression du conteneur \"{{.name}}\" ...",
@ -139,7 +131,6 @@
"Disable dynamic memory in your VM manager, or pass in a larger --memory value": "Désactivez la mémoire dynamique dans votre gestionnaire de machine virtuelle ou transmettez une valeur --memory plus grande",
"Disables the addon w/ADDON_NAME within minikube (example: minikube addons disable dashboard). For a list of available addons use: minikube addons list ": "Désactive le module w/ADDON_NAME dans minikube (exemple : minikube addons disable dashboard). Pour une liste des addons disponibles, utilisez : minikube addons list",
"Disables the filesystem mounts provided by the hypervisors": "Désactive les installations de systèmes de fichiers fournies par les hyperviseurs.",
"Disk size allocated to the minikube VM (format: \u003cnumber\u003e[\u003cunit\u003e], where unit = b, k, m or g)": "Taille de disque allouée à la VM minikube (format : \u003cnombre\u003e[\u003cunité\u003e], où \"unité\" = b, k, m ou g)",
"Disk size allocated to the minikube VM (format: \u003cnumber\u003e[\u003cunit\u003e], where unit = b, k, m or g).": "Taille du disque alloué à la VM minikube (format : \u003cnombre\u003e[\u003cunité\u003e], où unité = b, k, m ou g).",
"Display dashboard URL instead of opening a browser": "Afficher l'URL du tableau de bord au lieu d'ouvrir un navigateur",
"Display the Kubernetes addons URL in the CLI instead of opening it in the default browser": "Afficher l'URL des modules Kubernetes dans la CLI au lieu de l'ouvrir dans le navigateur par défaut",
@ -155,14 +146,12 @@
"Docker inside the VM is unavailable. Try running 'minikube delete' to reset the VM.": "Docker à l'intérieur de la VM n'est pas disponible. Essayez d'exécuter « minikube delete » pour réinitialiser la machine virtuelle.",
"Docs have been saved at - {{.path}}": "Les documents ont été enregistrés à - {{.path}}",
"Documentation: {{.url}}": "Documentation: {{.url}}",
"Done! kubectl is now configured to use \"{{.name}}\"": "Terminé ! kubectl est maintenant configuré pour utiliser \"{{.name}}\".",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "Terminé ! kubectl est maintenant configuré pour utiliser \"{{.name}}\" cluster et espace de noms \"{{.ns}}\" par défaut.",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "Téléchargement terminé !",
"Downloading Kubernetes {{.version}} preload ...": "Téléchargement du préchargement de Kubernetes {{.version}}...",
"Downloading VM boot image ...": "Téléchargement de l'image de démarrage de la VM...",
"Downloading driver {{.driver}}:": "Téléchargement du pilote {{.driver}} :",
"Due to networking limitations of driver {{.driver_name}} on {{.os_name}}, {{.addon_name}} addon is not supported.\nAlternatively to use this addon you can use a vm-based driver:\n\n\t'minikube start --vm=true'\n\nTo track the update on this work in progress feature please check:\nhttps://github.com/kubernetes/minikube/issues/7332": "En raison des limitations réseau du pilote {{.driver_name}} sur {{.os_name}}, le module {{.addon_name}} n'est pas pris en charge.\nAlternativement, pour utiliser ce module, vous pouvez utiliser un pilote basé sur vm :\n\n \t'minikube start --vm=true'\n\nPour suivre la mise à jour de cette fonctionnalité en cours de travail, veuillez vérifier :\nhttps://github.com/kubernetes/minikube/issues/7332",
"Due to networking limitations of driver {{.driver_name}}, {{.addon_name}} addon is not fully supported. Try using a different driver.": "En raison des limitations réseau du pilote {{.driver_name}}, le module {{.addon_name}} n'est pas entièrement pris en charge. Essayez d'utiliser un autre pilote.",
"Duration until minikube certificate expiration, defaults to three years (26280h).": "Durée jusqu'à l'expiration du certificat minikube, par défaut à trois ans (26280h).",
"ERROR creating `registry-creds-acr` secret": "ERREUR lors de la création du secret `registry-creds-acr`",
"ERROR creating `registry-creds-dpr` secret": "ERREUR lors de la création du secret `registry-creds-dpr`",
@ -174,11 +163,9 @@
"Enable host resolver for NAT DNS requests (virtualbox driver only)": "Active le résolveur d'hôte pour les requêtes DNS NAT (pilote VirtualBox uniquement).",
"Enable or disable a minikube addon": "Activer ou désactiver un module minikube",
"Enable proxy for NAT DNS requests (virtualbox driver only)": "Active le proxy pour les requêtes DNS NAT (pilote VirtualBox uniquement).",
"Enable the default CNI plugin (/etc/cni/net.d/k8s.conf). Used in conjunction with \\\"--network-plugin=cni\\": "Active le plug-in CNI par défaut (/etc/cni/net.d/k8s.conf). Utilisé en association avec \\\"--network-plugin=cni\\\".",
"Enabled addons: {{.addons}}": "Modules activés: {{.addons}}",
"Enables the addon w/ADDON_NAME within minikube. For a list of available addons use: minikube addons list ": "Active le module w/ADDON_NAME dans minikube. Pour une liste des modules disponibles, utilisez : minikube addons list",
"Enabling '{{.name}}' returned an error: {{.error}}": "L'activation de '{{.name}}' a renvoyé une erreur : {{.error}}",
"Enabling addons: {{.addons}}": "Installation des modules: {{.addons}}",
"Enabling dashboard ...": "Activation du tableau de bord...",
"Ensure that CRI-O is installed and healthy: Run 'sudo systemctl start crio' and 'journalctl -u crio'. Alternatively, use --container-runtime=docker": "Assurez-vous que CRI-O est installé et en fonctionnement : exécutez 'sudo systemctl start crio' et 'journalctl -u crio'. Sinon, utilisez --container-runtime=docker",
"Ensure that Docker is installed and healthy: Run 'sudo systemctl start docker' and 'journalctl -u docker'. Alternatively, select another value for --driver": "Assurez-vous que Docker est installé et en fonctionnement : exécutez 'sudo systemctl start docker' et 'journalctl -u docker'. Sinon, sélectionnez une autre valeur pour --driver",
@ -191,7 +178,6 @@
"Ensure your {{.driver_name}} is running and is healthy.": "Assurez-vous que votre {{.driver_name}} est en cours d'exécution et en fonctionnement.",
"Environment variables to pass to the Docker daemon. (format: key=value)": "Variables d'environment à transmettre au daemon Docker (format : clé = valeur).",
"Environment variables to pass to the build. (format: key=value)": "Variables d'environnement à transmettre au build. (format : clé=valeur)",
"Error checking driver version: {{.error}}": "Erreur lors de la vérification de la version du driver : {{.error}}",
"Error code docs have been saved at - {{.path}}": "Les documents de code d'erreur ont été enregistrés à - {{.path}}",
"Error creating minikube directory": "Erreur lors de la création du répertoire minikube",
"Error creating view template": "Erreur lors de la création du modèle de vue",
@ -210,9 +196,7 @@
"Error getting the host IP address to use from within the VM": "Erreur lors de l'obtention de l'adresse IP de l'hôte à utiliser depuis la VM",
"Error killing mount process": "Erreur lors de la suppression du processus de montage",
"Error loading profile config: {{.error}}": "Erreur lors du chargement de la configuration du profil : {{.error}}",
"Error loading profile {{.name}}: {{.error}}": "Erreur lors du chargement du profil {{.name}} : {{.error}}",
"Error opening service": "Erreur d'ouverture du service",
"Error parsing Driver version: {{.error}}": "Erreur lors de l'analyse de la version du pilote de la VM : {{.error}}",
"Error parsing minikube version: {{.error}}": "Erreur lors de l'analyse de la version de minikube : {{.error}}",
"Error parsing {{.name}}={{.value}}, {{.err}}": "Erreur lors de l'analyse de {{.name}}={{.value}}, {{.err}}",
"Error reading {{.path}}: {{.error}}": "Erreur de lecture {{.path}} : {{.error}}",
@ -222,11 +206,9 @@
"Error while setting kubectl current context: {{.error}}": "Erreur lors de la définition du contexte actuel de kubectl : {{.error}}",
"Error with ssh-add": "Erreur avec ssh-add",
"Error writing mount pid": "Erreur lors de l'écriture du pid de montage",
"Error: You have selected Kubernetes v{{.new}}, but the existing cluster for your profile is running Kubernetes v{{.old}}. Non-destructive downgrades are not supported, but you can proceed by performing one of the following options:\n* Recreate the cluster using Kubernetes v{{.new}}: Run \"minikube delete {{.profile}}\", then \"minikube start {{.profile}} --kubernetes-version={{.new}}\"\n* Create a second cluster with Kubernetes v{{.new}}: Run \"minikube start -p \u003cnew name\u003e --kubernetes-version={{.new}}\"\n* Reuse the existing cluster with Kubernetes v{{.old}} or newer: Run \"minikube start {{.profile}} --kubernetes-version={{.old}}": "Erreur : Vous avez sélectionné Kubernetes v{{.new}}, mais le cluster existent pour votre profil exécute Kubernetes v{{.old}}. Les rétrogradations non-destructives ne sont pas compatibles. Toutefois, vous pouvez poursuivre le processus en réalisant l'une des trois actions suivantes :\n* Créer à nouveau le cluster en utilisant Kubernetes v{{.new}} exécutez \"minikube delete {{.profile}}\", puis \"minikube start {{.profile}} --kubernetes-version={{.new}}\".\n* Créer un second cluster avec Kubernetes v{{.new}} exécutez \"minikube start -p \u003cnew name\u003e --kubernetes-version={{.new}}\".\n* Réutiliser le cluster existent avec Kubernetes v{{.old}} ou version ultérieure exécutez \"minikube start {{.profile}} --kubernetes-version={{.old}}\".",
"Examples": "Exemples",
"Executing \"{{.command}}\" took an unusually long time: {{.duration}}": "L'exécution de \"{{.command}}\" a pris un temps inhabituellement long : {{.duration}}",
"Existing disk is missing new features ({{.error}}). To upgrade, run 'minikube delete'": "Il manque de nouvelles fonctionnalités sur le disque existant ({{.error}}). Pour mettre à niveau, exécutez 'minikube delete'",
"Exiting": "Fermeture…",
"Exiting due to {{.fatal_code}}: {{.fatal_msg}}": "Fermeture en raison de {{.fatal_code}} : {{.fatal_msg}}",
"Exposed port of the proxyfied dashboard. Set to 0 to pick a random port.": "Port exposé du tableau de bord proxyfié. Réglez sur 0 pour choisir un port aléatoire.",
"External Adapter on which external switch will be created if no external switch is found. (hyperv driver only)": "L'adaptateur externe sur lequel un commutateur externe sera créé si aucun commutateur externe n'est trouvé. (pilote hyperv uniquement)",
@ -246,7 +228,6 @@
"Failed to delete cluster {{.name}}, proceeding with retry anyway.": "Échec de la suppression du cluster {{.name}}, réessayez quand même.",
"Failed to delete cluster {{.name}}.": "Échec de la suppression du cluster {{.name}}.",
"Failed to delete cluster: {{.error}}": "Échec de la suppression du cluster : {{.error}}",
"Failed to delete cluster: {{.error}}__1": "Échec de la suppression du cluster : {{.error}}",
"Failed to delete images": "Échec de la suppression des images",
"Failed to delete images from config": "Échec de la suppression des images de la configuration",
"Failed to enable container runtime": "Échec de l'activation de l'environnement d'exécution du conteneur",
@ -271,7 +252,6 @@
"Failed to save dir": "Échec de l'enregistrement du répertoire",
"Failed to save image": "Échec de l'enregistrement de l'image",
"Failed to save stdin": "Échec de l'enregistrement de l'entrée standard",
"Failed to set NO_PROXY Env. Please use `export NO_PROXY=$NO_PROXY,{{.ip}}": "Échec de la définition la variable d'environnement NO_PROXY. Veuillez utiliser `export NO_PROXY=$NO_PROXY,{{.ip}}.",
"Failed to set NO_PROXY Env. Please use `export NO_PROXY=$NO_PROXY,{{.ip}}`.": "Échec de la définition de la variable d'environnement NO_PROXY. Veuillez utiliser `export NO_PROXY=$NO_PROXY,{{.ip}}`.",
"Failed to setup certs": "Échec de la configuration des certificats",
"Failed to start container runtime": "Échec du démarrage de l'exécution du conteneur",
@ -280,17 +260,13 @@
"Failed to tag images": "Échec du marquage des images",
"Failed to update cluster": "Échec de la mise à jour du cluster",
"Failed to update config": "Échec de la mise à jour de la configuration",
"Failed to verify '{{.driver_name}} info' will try again ...": "Échec de la vérification des informations sur '{{.driver_name}}' va réessayer ...",
"Failed unmount: {{.error}}": "Échec du démontage : {{.error}}",
"File permissions used for the mount": "Autorisations de fichier utilisées pour le montage",
"Filter to use only VM Drivers": "Filtrer pour n'utiliser que les pilotes VM",
"Flags": "Indicateurs",
"Follow": "Suivre",
"For best results, install kubectl: https://kubernetes.io/docs/tasks/tools/install-kubectl/": "Pour des résultats optimaux, installez kubectl à l'adresse suivante : https://kubernetes.io/docs/tasks/tools/install-kubectl/",
"For best results, install kubectl: https://kubernetes.io/docs/tasks/tools/install-kubectl/__1": "Pour des résultats optimaux, installez kubectl à l'adresse suivante : https://kubernetes.io/docs/tasks/tools/install-kubectl/",
"For improved {{.driver}} performance, {{.fix}}": "Pour de meilleures performances {{.driver}}, {{.fix}}",
"For more information see: https://minikube.sigs.k8s.io/docs/drivers/{{.driver}}": "Pour plus d'informations, voir : https://minikube.sigs.k8s.io/docs/drivers/{{.driver}}",
"For more information, see:": "Pour en savoir plus, consultez les pages suivantes :",
"For more information, see: https://minikube.sigs.k8s.io/docs/reference/drivers/none/": "Pour plus d'informations, voir : https://minikube.sigs.k8s.io/docs/reference/drivers/none/",
"For more information, see: {{.url}}": "Pour plus d'informations, voir : {{.url}}",
"Force environment to be configured for a specified shell: [fish, cmd, powershell, tcsh, bash, zsh], default is auto-detect": "Forcer l'environnement à être configuré pour un shell spécifié : [fish, cmd, powershell, tcsh, bash, zsh], la valeur par défaut est la détection automatique",
@ -319,6 +295,7 @@
"Group ID: {{.groupID}}": "Identifiant du groupe: {{.groupID}}",
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "Masque la signature de l'hyperviseur de l'invité dans minikube (pilote kvm2 uniquement).",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "Hyperkit ne fonctionne pas. Mettez à niveau vers la dernière version d'hyperkit et/ou Docker for Desktop. Alternativement, vous pouvez choisir un autre --driver",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "Le réseau Hyperkit ne fonctionne pas. Mettez à niveau vers la dernière version d'hyperkit et/ou Docker for Desktop. Alternativement, vous pouvez choisir un autre --driver",
"IP Address to use to expose ports (docker and podman driver only)": "Adresse IP à utiliser pour exposer les ports (pilote docker et podman uniquement)",
"IP address (ssh driver only)": "Adresse IP (pilote ssh uniquement)",
@ -328,11 +305,11 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "Si défini, télécharge l'archive tar des images préchargées si disponibles pour améliorer le temps de démarrage. La valeur par défaut est true.",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "S'il est défini, force l'environnement d'exécution du conteneur à utiliser systemd comme gestionnaire de groupe de contrôle. La valeur par défaut est false.",
"If set, install addons. Defaults to true.": "Si défini, installe les modules. La valeur par défaut est true.",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "Si défini, suspend tous les espaces de noms",
"If set, unpause all namespaces": "Si défini, annule la pause de tous les espaces de noms",
"If the above advice does not help, please let us know:": "Si les conseils ci-dessus ne vous aident pas, veuillez nous en informer :",
"If true, cache docker images for the current bootstrapper and load them into the machine. Always false with --driver=none.": "Si vrai, met en cache les images Docker pour le programme d'amorçage actuel et les charge dans la machine. Toujours faux avec --driver=none.",
"If true, cache docker images for the current bootstrapper and load them into the machine. Always false with --vm-driver=none.": "Si la valeur est \"true\", met les images Docker en cache pour l'amorceur actuel et les charge dans la machine. La valeur est toujours \"false\" avec --vm-driver=none.",
"If true, only download and cache files for later use - don't install or start anything.": "Si la valeur est \"true\", téléchargez les fichiers et mettez-les en cache uniquement pour une utilisation future. Ne lancez pas d'installation et ne commencez aucun processus.",
"If true, pods might get deleted and restarted on addon enable": "Si vrai, les pods peuvent être supprimés et redémarrés lors addon enable",
"If true, returns list of profiles faster by skipping validating the status of the cluster.": "Si vrai, renvoie la liste des profils plus rapidement en ignorant la validation de l'état du cluster.",
@ -351,10 +328,8 @@
"Images used by this addon. Separated by commas.": "Images utilisées par ce module. Séparé par des virgules.",
"In order to use the fall back image, you need to log in to the github packages registry": "Pour utiliser l'image de secours, vous devez vous connecter au registre des packages github",
"Insecure Docker registries to pass to the Docker daemon. The default service CIDR range will automatically be added.": "Registres Docker non sécurisés à transmettre au démon Docker. La plage CIDR de service par défaut sera automatiquement ajoutée.",
"Insecure Docker registries to pass to the Docker daemon. The default service CIDR range will automatically be added.": "Registres Docker non sécurisés à transmettre au daemon Docker. La plage CIDR par défaut du service sera ajoutée automatiquement.",
"Install VirtualBox and ensure it is in the path, or select an alternative value for --driver": "Installez VirtualBox et assurez-vous qu'il est dans le chemin, ou sélectionnez une valeur alternative pour --driver",
"Install the latest hyperkit binary, and run 'minikube delete'": "Installez le dernier binaire hyperkit et exécutez 'minikube delete'",
"Invalid Container Runtime: \"{{.runtime}}\". Valid runtimes are: {{.validOptions}}": "Exécution de conteneur non valide : \"{{.runtime}}\". Les environnements d'exécution valides sont : {{.validOptions}}",
"Invalid port": "Port invalide",
"Istio needs {{.minCPUs}} CPUs -- your configuration only allocates {{.cpus}} CPUs": "Istio a besoin de {{.minCPUs}} processeurs -- votre configuration n'alloue que {{.cpus}} processeurs",
"Istio needs {{.minMem}}MB of memory -- your configuration only allocates {{.memory}}MB": "Istio a besoin de {{.minMem}}Mo de mémoire -- votre configuration n'alloue que {{.memory}}Mo",
@ -364,7 +339,6 @@
"Kubernetes requires at least 2 CPU's to start": "Kubernetes nécessite au moins 2 processeurs pour démarrer",
"Kubernetes {{.new}} is now available. If you would like to upgrade, specify: --kubernetes-version={{.prefix}}{{.new}}": "Kubernetes {{.new}} est désormais disponible. Si vous souhaitez effectuer une mise à niveau, spécifiez : --kubernetes-version={{.prefix}}{{.new}}",
"Kubernetes {{.version}} is not supported by this release of minikube": "Kubernetes {{.version}} n'est pas pris en charge par cette version de minikube",
"Launching Kubernetes ...": "Lancement de Kubernetes...",
"Launching proxy ...": "Lancement du proxy...",
"List all available images from the local cache.": "Répertoriez toutes les images disponibles à partir du cache local.",
"List existing minikube nodes.": "Répertoriez les nœuds minikube existants.",
@ -384,7 +358,6 @@
"Local folders to share with Guest via NFS mounts (hyperkit driver only)": "Dossiers locaux à partager avec l'invité par des installations NFS (pilote hyperkit uniquement).",
"Local proxy ignored: not passing {{.name}}={{.value}} to docker env.": "Proxy local ignoré : ne pas passer {{.name}}={{.value}} à docker env.",
"Location of the VPNKit socket used for networking. If empty, disables Hyperkit VPNKitSock, if 'auto' uses Docker for Mac VPNKit connection, otherwise uses the specified VSock (hyperkit driver only)": "Emplacement du socket VPNKit exploité pour la mise en réseau. Si la valeur est vide, désactive Hyperkit VPNKitSock. Si la valeur affiche \"auto\", utilise la connexion VPNKit de Docker pour Mac. Sinon, utilise le VSock spécifié (pilote hyperkit uniquement).",
"Location of the minikube iso": "Emplacement de l'ISO minikube.",
"Locations to fetch the minikube ISO from.": "Emplacements à partir desquels récupérer l'ISO minikube.",
"Log into or run a command on a machine with SSH; similar to 'docker-machine ssh'.": "Connectez-vous ou exécutez une commande sur une machine avec SSH ; similaire à 'docker-machine ssh'.",
"Log into the minikube environment (for debugging)": "Connectez-vous à l'environnement minikube (pour le débogage)",
@ -408,18 +381,14 @@
"No minikube profile was found. ": "Aucun profil minikube n'a été trouvé.",
"No possible driver was detected. Try specifying --driver, or see https://minikube.sigs.k8s.io/docs/start/": "Aucun pilote possible n'a été détecté. Essayez de spécifier --driver, ou consultez https://minikube.sigs.k8s.io/docs/start/",
"No such addon {{.name}}": "Aucun module de ce type {{.name}}",
"Node \"{{.node_name}}\" stopped.": "Le noeud \"{{.node_name}}\" est arrêté.",
"Node {{.name}} failed to start, deleting and trying again.": "Le nœud {{.name}} n'a pas pu démarrer, suppression et réessai.",
"Node {{.name}} was successfully deleted.": "Le nœud {{.name}} a été supprimé avec succès.",
"Node {{.nodeName}} does not exist.": "Le nœud {{.nodeName}} n'existe pas.",
"None of the known repositories are accessible. Consider specifying an alternative image repository with --image-repository flag": "Aucun des référentiels connus n'est accessible. Envisagez de spécifier un référentiel d'images alternatif avec l'indicateur --image-repository",
"None of the known repositories in your location are accessible. Using {{.image_repository_name}} as fallback.": "Aucun dépôt connu dans votre emplacement n'est accessible. {{.image_repository_name}} est utilisé comme dépôt de remplacement.",
"None of the known repositories is accessible. Consider specifying an alternative image repository with --image-repository flag": "Aucun dépôt connu n'est accessible. Pensez à spécifier un autre dépôt d'images à l'aide de l'indicateur \"--image-repository\".",
"Noticed you have an activated docker-env on {{.driver_name}} driver in this terminal:": "Vous avez remarqué que vous avez un docker-env activé sur le pilote {{.driver_name}} dans ce terminal :",
"Noticed you have an activated podman-env on {{.driver_name}} driver in this terminal:": "Vous avez remarqué que vous avez un pilote podman-env activé sur {{.driver_name}} dans ce terminal :",
"Number of CPUs allocated to the minikube VM": "Nombre de processeurs alloués à la VM minikube.",
"Number of extra disks created and attached to the minikube VM (currently only implemented for hyperkit and kvm2 drivers)": "Nombre de disques supplémentaires créés et attachés à la machine virtuelle minikube (actuellement implémenté uniquement pour les pilotes hyperkit et kvm2)",
"Number of extra disks created and attached to the minikube VM (currently only implemented for hyperkit driver)": "Nombre de disques supplémentaires créés et attachés à la machine virtuelle minikube (actuellement implémenté uniquement pour le pilote hyperkit)",
"Number of lines back to go within the log": "Nombre de lignes à remonter dans le journal",
"OS release is {{.pretty_name}}": "La version du système d'exploitation est {{.pretty_name}}",
"One of 'text', 'yaml' or 'json'.": "Un parmi 'text', 'yaml' ou 'json'.",
@ -444,7 +413,6 @@
"Pausing node {{.name}} ... ": "Suspendre le nœud {{.name}} ...",
"Permissions: {{.octalMode}} ({{.writtenMode}})": "Autorisations : {{.octalMode}} ({{.writtenMode}})",
"Please also attach the following file to the GitHub issue:": "Veuillez également joindre le fichier suivant au problème GitHub",
"Please attach the following file to the GitHub issue:": "Veuillez joindre le fichier suivant au problème GitHub :",
"Please create a cluster with bigger disk size: `minikube start --disk SIZE_MB` ": "Veuillez créer un cluster avec une plus grande taille de disque : `minikube start --disk SIZE_MB`",
"Please either authenticate to the registry or use --base-image flag to use a different registry.": "Veuillez vous authentifier auprès du registre ou utiliser l'indicateur --base-image pour utiliser un registre différent.",
"Please enter a value:": "Entrer un nombre, SVP:",
@ -464,7 +432,6 @@
"Please specify the directory to be mounted: \n\tminikube mount \u003csource directory\u003e:\u003ctarget directory\u003e (example: \"/host-home:/vm-home\")": "Veuillez spécifier le répertoire à monter : \n\tminikube mount \u003csource directory\u003e:\u003ctarget directory\u003e (exemple : \"/host-home:/vm-home\")",
"Please specify the path to copy: \n\tminikube cp \u003csource file path\u003e \u003ctarget file absolute path\u003e (example: \"minikube cp a/b.txt /copied.txt\")": "Veuillez spécifier le chemin à copier : \n\tminikube cp \u003cchemin du fichier source\u003e \u003cchemin absolu du fichier cible\u003e (exemple : \"minikube cp a/b.txt /copied.txt\")",
"Please try purging minikube using `minikube delete --all --purge`": "Veuillez essayer de purger minikube en utilisant `minikube delete --all --purge`",
"Please upgrade the '{{.driver_executable}}'. {{.documentation_url}}": "Veuillez mettre à niveau l'exécutable \"{{.driver_executable}}\". {{.documentation_url}}",
"Please visit the following link for documentation around this: \n\thttps://help.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-docker-for-use-with-github-packages#authenticating-to-github-packages\n": "Veuillez visiter le lien suivant pour la documentation à ce sujet : \n\thttps://help.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-docker-for-use-with -github-packages#authentiating-to-github-packages\n",
"Populates the specified folder with documentation in markdown about minikube": "Remplit le dossier spécifié avec la documentation en markdown sur minikube",
"PowerShell is running in constrained mode, which is incompatible with Hyper-V scripting.": "PowerShell s'exécute en mode contraint, ce qui est incompatible avec les scripts Hyper-V.",
@ -486,7 +453,6 @@
"Pull images": "Extraction des images",
"Pull the remote image (no caching)": "Extraire l'image distante (pas de mise en cache)",
"Pulling base image ...": "Extraction de l'image de base...",
"Pulling images ...": "Extraction des images... ",
"Push images": "Diffusion des images",
"Push the new image (requires tag)": "Pousser la nouvelle image (nécessite une balise)",
"Reboot to complete VirtualBox installation, verify that VirtualBox is not blocked by your system, and/or use another hypervisor": "Redémarrez pour terminer l'installation de VirtualBox, vérifiez que VirtualBox n'est pas bloqué par votre système et/ou utilisez un autre hyperviseur",
@ -499,17 +465,13 @@
"Reinstall VirtualBox and verify that it is not blocked: System Preferences -\u003e Security \u0026 Privacy -\u003e General -\u003e Some system software was blocked from loading": "Réinstallez VirtualBox et vérifiez qu'il n'est pas bloqué : Préférences Système -\u003e Sécurité \u0026 Confidentialité -\u003e Général -\u003e Le chargement de certains logiciels système a été bloqué",
"Related issue: {{.url}}": "Problème connexe: {{.url}}",
"Related issues:": "Problème connexe:",
"Relaunching Kubernetes using {{.bootstrapper}} ...": "Redémarrage de Kubernetes à l'aide de {{.bootstrapper}}…",
"Remove one or more images": "Supprimer une ou plusieurs images",
"Remove the invalid --docker-opt or --insecure-registry flag if one was provided": "Supprimez l'indicateur --docker-opt ou --insecure-registry non valide s'il a été fourni",
"Removed all traces of the \"{{.name}}\" cluster.": "Le cluster \"{{.name}}\" a été supprimé.",
"Removing {{.directory}} ...": "Suppression du répertoire {{.directory}}…",
"Requested cpu count {{.requested_cpus}} is greater than the available cpus of {{.avail_cpus}}": "Le nombre de processeurs demandés {{.requested_cpus}} est supérieur au nombre de processeurs disponibles de {{.avail_cpus}}",
"Requested cpu count {{.requested_cpus}} is less than the minimum allowed of {{.minimum_cpus}}": "Le nombre de processeurs demandés {{.requested_cpus}} est inférieur au minimum autorisé de {{.minimum_cpus}}",
"Requested disk size {{.requested_size}} is less than minimum of {{.minimum_size}}": "La taille de disque demandée ({{.requested_size}}) est inférieure à la taille minimale ({{.minimum_size}}).",
"Requested memory allocation ({{.memory}}MB) is less than the default memory allocation of {{.default_memorysize}}MB. Beware that minikube might not work correctly or crash unexpectedly.": "L'allocation de mémoire demandée ({{.memory}} Mo) est inférieure à l'allocation de mémoire par défaut ({{.default_memorysize}} Mo). Sachez que minikube pourrait ne pas fonctionner correctement ou planter de manière inattendue.",
"Requested memory allocation ({{.requested}}MB) is less than the recommended minimum {{.recommend}}MB. Deployments may fail.": "L'allocation de mémoire demandée ({{.requested}} Mo) est inférieure au minimum recommandé de {{.recommend}} Mo. Les déploiements peuvent échouer.",
"Requested memory allocation {{.requested_size}} is less than the minimum allowed of {{.minimum_size}}": "L'allocation de mémoire demandée ({{.requested_size}}) est inférieure au minimum autorisé ({{.minimum_size}}).",
"Requested memory allocation {{.requested}}MB is more than your system limit {{.system_limit}}MB.": "L'allocation de mémoire demandée {{.requested}} Mo est supérieure à la limite de votre système {{.system_limit}} Mo.",
"Requested memory allocation {{.requested}}MiB is less than the usable minimum of {{.minimum_memory}}MB": "L'allocation de mémoire demandée {{.requested}} Mio est inférieure au minimum utilisable de {{.minimum_memory}} Mo",
"Reset Docker to factory defaults": "Réinitialiser Docker aux paramètres d'usine",
@ -586,15 +548,15 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "La spécification de disques supplémentaires n'est actuellement prise en charge que pour les pilotes suivants : {{.supported_drivers}}. Si vous pouvez contribuer à ajouter cette fonctionnalité, veuillez créer un PR.",
"StartHost failed, but will try again: {{.error}}": "StartHost a échoué, mais va réessayer : {{.error}}",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "Démarrage du noeud de plan de contrôle {{.name}} dans le cluster {{.cluster}}",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting node {{.name}} in cluster {{.cluster}}": "Démarrage du noeud {{.name}} dans le cluster {{.cluster}}",
"Starting tunnel for service {{.service}}.": "Tunnel de démarrage pour le service {{.service}}.",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "Démarre un cluster Kubernetes local",
"Starts a local kubernetes cluster": "Démarre un cluster Kubernetes local.",
"Starts a node.": "Démarre un nœud.",
"Starts an existing stopped node in a cluster.": "Démarre un nœud arrêté existant dans un cluster.",
"Startup with {{.old_driver}} driver failed, trying with alternate driver {{.new_driver}}: {{.error}}": "Échec du démarrage avec le pilote {{.old_driver}}, essai avec un autre pilote {{.new_driver}} : {{.error}}",
"Stopped tunnel for service {{.service}}.": "Tunnel arrêté pour le service {{.service}}.",
"Stopping \"{{.profile_name}}\" in {{.driver_name}} ...": "Arrêt de \"{{.profile_name}}\" sur {{.driver_name}}...",
"Stopping node \"{{.name}}\" ...": "Nœud d'arrêt \"{{.name}}\" ...",
"Stopping tunnel for service {{.service}}.": "Tunnel d'arrêt pour le service {{.service}}.",
"Stops a local Kubernetes cluster. This command stops the underlying VM or container, but keeps user data intact. The cluster can be started again with the \"start\" command.": "Arrête un cluster Kubernetes local. Cette commande arrête la VM ou le conteneur sous-jacent, mais conserve les données utilisateur intactes. Le cluster peut être redémarré avec la commande \"start\".",
@ -613,17 +575,14 @@
"Target directory {{.path}} must be an absolute path": "Le répertoire cible {{.path}} doit être un chemin absolu",
"Target {{.path}} can not be empty": "La cible {{.path}} ne peut pas être vide",
"Test docs have been saved at - {{.path}}": "Les documents de test ont été enregistrés à - {{.path}}",
"The \"{{.driver_name}}\" driver requires root privileges. Please run minikube using 'sudo minikube --vm-driver={{.driver_name}}": "Le pilote \"{{.driver_name}}\" nécessite de disposer de droits racine. Veuillez exécuter minikube à l'aide de \"sudo minikube --vm-driver={{.driver_name}}\".",
"The \"{{.driver_name}}\" driver should not be used with root privileges.": "Le pilote \"{{.driver_name}}\" ne doit pas être utilisé avec les privilèges root.",
"The 'none' driver is designed for experts who need to integrate with an existing VM": "Le pilote 'none' est conçu pour les experts qui doivent s'intégrer à une machine virtuelle existante",
"The 'none' driver provides limited isolation and may reduce system security and reliability.": "L'isolation fournie par le pilote \"none\" (aucun) est limitée, ce qui peut diminuer la sécurité et la fiabilité du système.",
"The '{{.addonName}}' addon is enabled": "Le module '{{.addonName}}' est activé",
"The '{{.driver}}' driver requires elevated permissions. The following commands will be executed:\\n\\n{{ .example }}\\n": "Le pilote '{{.driver}}' nécessite des autorisations élevées. Les commandes suivantes seront exécutées :\\n\\n{{ .example }}\\n",
"The '{{.driver}}' provider was not found: {{.error}}": "Le fournisseur '{{.driver}}' n'a pas été trouvé : {{.error}}",
"The '{{.name}} driver does not support multiple profiles: https://minikube.sigs.k8s.io/docs/reference/drivers/none/": "Le pilote '{{.name}}' ne prend pas en charge plusieurs profils : https://minikube.sigs.k8s.io/docs/reference/drivers/none/",
"The '{{.name}}' driver does not respect the --cpus flag": "Le pilote '{{.name}}' ne respecte pas l'indicateur --cpus",
"The '{{.name}}' driver does not respect the --memory flag": "Le pilote '{{.name}}' ne respecte pas l'indicateur --memory",
"The --image-repository flag your provided contains Scheme: {{.scheme}}, it will be as a domian, removed automatically": "L'indicateur --image-repository que vous avez fourni contient le schéma : {{.scheme}}, ce sera en tant que domaine, supprimé automatiquement",
"The --image-repository flag your provided contains Scheme: {{.scheme}}, which will be removed automatically": "L'indicateur --image-repository que vous avez fourni contient le schéma: {{.scheme}}, qui sera automatiquement supprimé",
"The --image-repository flag your provided ended with a trailing / that could cause conflict in kuberentes, removed automatically": "L'indicateur --image-repository que vous avez fourni s'est terminé par un / qui pourrait provoquer un conflit dans kubernetes, supprimé automatiquement",
"The CIDR to be used for service cluster IPs.": "Méthode CIDR à exploiter pour les adresses IP des clusters du service.",
@ -631,28 +590,22 @@
"The KVM QEMU connection URI. (kvm2 driver only)": "URI de connexion QEMU de la KVM (pilote kvm2 uniquement).",
"The KVM default network name. (kvm2 driver only)": "Le nom de réseau par défaut de KVM. (pilote kvm2 uniquement)",
"The KVM driver is unable to resurrect this old VM. Please run `minikube delete` to delete it and try again.": "Le pilote KVM est incapable de ressusciter cette ancienne VM. Veuillez exécuter `minikube delete` pour la supprimer et réessayer.",
"The KVM network name. (kvm2 driver only)": "Nom du réseau de la KVM (pilote kvm2 uniquement).",
"The VM driver crashed. Run 'minikube start --alsologtostderr -v=8' to see the VM driver error message": "Le pilote VM s'est écrasé. Exécutez 'minikube start --alsologtostderr -v=8' pour voir le message d'erreur du pilote VM",
"The VM driver exited with an error, and may be corrupt. Run 'minikube start' with --alsologtostderr -v=8 to see the error": "Le pilote VM s'est terminé avec une erreur et est peut-être corrompu. Exécutez 'minikube start' avec --alsologtostderr -v=8 pour voir l'erreur",
"The VM that minikube is configured for no longer exists. Run 'minikube delete'": "La machine virtuelle pour laquelle minikube est configuré n'existe plus. Exécutez 'minikube delete'",
"The \\\"{{.name}}\\\" container runtime requires CNI": "L'environnement d'exécution du conteneur \\\"{{.name}}\\\" nécessite CNI",
"The ambassador addon has stopped working as of v1.23.0, for more details visit: https://github.com/datawire/ambassador-operator/issues/73": "Le module Ambassador a cessé de fonctionner à partir de la v1.23.0, pour plus de détails, visitez : https://github.com/datawire/ambassador-operator/issues/73",
"The apiserver listening port": "Port d'écoute du serveur d'API.",
"The apiserver name which is used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Nom du serveur d'API utilisé dans le certificat généré pour Kubernetes. Vous pouvez l'utiliser si vous souhaitez que le serveur d'API soit disponible en dehors de la machine.",
"The argument to pass the minikube mount command on start": "Argument à transmettre à la commande d'installation de minikube au démarrage.",
"The argument to pass the minikube mount command on start.": "L'argument pour passer la commande de montage minikube au démarrage.",
"The authoritative apiserver hostname for apiserver certificates and connectivity. This can be used if you want to make the apiserver available from outside the machine": "Le nom d'hôte apiserver faisant autorité pour les certificats apiserver et la connectivité. Cela peut être utilisé si vous souhaitez rendre l'apiserver disponible depuis l'extérieur de la machine",
"The base image to use for docker/podman drivers. Intended for local development.": "L'image de base à utiliser pour les pilotes docker/podman. Destiné au développement local.",
"The certificate hostname provided appears to be invalid (may be a minikube bug, try 'minikube delete')": "Le nom d'hôte du certificat fourni semble être invalide (peut être un bogue minikube, essayez 'minikube delete')",
"The cluster dns domain name used in the Kubernetes cluster": "Le nom de domaine DNS du cluster utilisé dans le cluster Kubernetes",
"The cluster dns domain name used in the kubernetes cluster": "Nom du domaine DNS du cluster utilisé dans le cluster Kubernetes.",
"The cluster {{.cluster}} already exists which means the --nodes parameter will be ignored. Use \"minikube node add\" to add nodes to an existing cluster.": "Le cluster {{.cluster}} existe déjà, ce qui signifie que le paramètre --nodes sera ignoré. Utilisez \"minikube node add\" pour ajouter des nœuds à un cluster existant.",
"The container runtime to be used (docker, crio, containerd)": "environment d'exécution du conteneur à utiliser (docker, crio, containerd).",
"The control plane for \"{{.name}}\" is paused!": "Le plan de contrôle pour \"{{.name}}\" est en pause !",
"The control plane node \"{{.name}}\" does not exist.": "Le nœud du plan de contrôle \"{{.name}}\" n'existe pas.",
"The control plane node is not running (state={{.state}})": "Le nœud du plan de contrôle n'est pas en cours d'exécution (state={{.state}})",
"The control plane node must be running for this command": "Le nœud du plan de contrôle doit être en cours d'exécution pour cette commande",
"The cri socket path to be used": "Chemin d'accès au socket CRI à utiliser.",
"The cri socket path to be used.": "Le chemin de socket cri à utiliser.",
"The docker-env command is incompatible with multi-node clusters. Use the 'registry' add-on: https://minikube.sigs.k8s.io/docs/handbook/registry/": "La commande docker-env est incompatible avec les clusters multi-nœuds. Utilisez le module 'registry' : https://minikube.sigs.k8s.io/docs/handbook/registry/",
"The docker-env command is only compatible with the \"docker\" runtime, but this cluster was configured to use the \"{{.runtime}}\" runtime.": "La commande docker-env n'est compatible qu'avec le runtime \"docker\", mais ce cluster a été configuré pour utiliser le runtime \"{{.runtime}}\".",
@ -665,12 +618,10 @@
"The image '{{.imageName}}' was not found; unable to add it to cache.": "L'image '{{.imageName}}' n'a pas été trouvée ; impossible de l'ajouter au cache.",
"The initial time interval for each check that wait performs in seconds": "L'intervalle de temps initial pour chaque vérification effectuée en secondes",
"The kubeadm binary within the Docker container is not executable": "Le binaire kubeadm dans le conteneur Docker n'est pas exécutable",
"The kubernetes version that the minikube VM will use (ex: v1.2.3)": "Version de Kubernetes qu'utilisera la VM minikube (exemple : v1.2.3).",
"The machine-driver specified is failing to start. Try running 'docker-machine-driver-\u003ctype\u003e version'": "Le pilote de machine spécifié ne démarre pas. Essayez d'exécuter 'docker-machine-driver-\u003ctype\u003e version'",
"The minikube VM is offline. Please run 'minikube start' to start it again.": "La machine virtuelle minikube est hors ligne. Veuillez exécuter 'minikube start' pour le redémarrer.",
"The minikube {{.driver_name}} container exited unexpectedly.": "Le conteneur minikube {{.driver_name}} s'est fermé de manière inattendue.",
"The minimum required version for podman is \"{{.minVersion}}\". your version is \"{{.currentVersion}}\". minikube might not work. use at your own risk. To install latest version please see https://podman.io/getting-started/installation.html": "La version minimale requise pour podman est \"{{.minVersion}}\". votre version est \"{{.currentVersion}}\". minikube pourrait ne pas fonctionner. À utiliser à vos risques et périls. Pour installer la dernière version, veuillez consulter https://podman.io/getting-started/installation.html",
"The name of the network plugin": "Nom du plug-in réseau.",
"The named space to activate after start": "L'espace nommé à activer après le démarrage",
"The node to build on. Defaults to the primary control plane.": "Le nœud sur lequel construire. La valeur par défaut est le plan de contrôle principal.",
"The node to check status for. Defaults to control plane. Leave blank with default format for status on all nodes.": "Le nœud pour lequel vérifier l'état. La valeur par défaut est le plan de contrôle. Laissez vide avec le format par défaut pour l'état sur tous les nœuds.",
@ -693,16 +644,14 @@
"The podman-env command is incompatible with multi-node clusters. Use the 'registry' add-on: https://minikube.sigs.k8s.io/docs/handbook/registry/": "La commande podman-env est incompatible avec les clusters multi-nœuds. Utilisez le module 'registry' : https://minikube.sigs.k8s.io/docs/handbook/registry/",
"The requested memory allocation of {{.requested}}MiB does not leave room for system overhead (total system memory: {{.system_limit}}MiB). You may face stability issues.": "L'allocation de mémoire demandée de {{.requested}}MiB ne laisse pas de place pour la surcharge système (mémoire système totale : {{.system_limit}}MiB). Vous pouvez rencontrer des problèmes de stabilité.",
"The service namespace": "L'espace de nom du service",
"The service {{.service}} requires privileged ports to be exposed: {{.ports}}": "Le service {{.service}} nécessite l'exposition des ports privilégiés : {{.ports}}",
"The service/ingress {{.resource}} requires privileged ports to be exposed: {{.ports}}": "Le service/ingress {{.resource}} nécessite l'exposition des ports privilégiés : {{.ports}}",
"The services namespace": "L'espace de noms des services",
"The time interval for each check that wait performs in seconds": "L'intervalle de temps pour chaque contrôle que wait effectue en secondes",
"The value passed to --format is invalid": "La valeur passée à --format n'est pas valide",
"The value passed to --format is invalid: {{.error}}": "La valeur passée à --format n'est pas valide : {{.error}}",
"The {{.driver_name}} driver should not be used with root privileges.": "Le pilote {{.driver_name}} ne doit pas être utilisé avec des droits racine.",
"There's a new version for '{{.driver_executable}}'. Please consider upgrading. {{.documentation_url}}": "Une nouvelle version de \"{{.driver_executable}}\" est disponible. Pensez à effectuer la mise à niveau. {{.documentation_url}}",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "Ces paramètres --extra-config ne sont pas valides : {{.invalid_extra_opts}}",
"These changes will take effect upon a minikube delete and then a minikube start": "Ces modifications prendront effet lors d'une suppression de minikube, puis d'un démarrage de minikube",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "Ce module n'a pas de point de terminaison défini pour la commande 'addons open'.\nVous pouvez en ajouter un en annotant un service avec le libellé {{.labelName}} :{{.addonName}}",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "Cette opération peut également être réalisée en définissant la variable d'environment \"CHANGE_MINIKUBE_NONE_USER=true\".",
"This control plane is not running! (state={{.state}})": "Ce plan de contrôle ne fonctionne pas ! (état={{.state}})",
@ -710,14 +659,10 @@
"This is a known issue with BTRFS storage driver, there is a workaround, please checkout the issue on GitHub": "Il s'agit d'un problème connu avec le pilote de stockage BTRFS, il existe une solution de contournement, veuillez vérifier le problème sur GitHub",
"This is unusual - you may want to investigate using \"{{.command}}\"": "C'est inhabituel - vous voudrez peut-être investiguer en utilisant \"{{.command}}\"",
"This will keep the existing kubectl context and will create a minikube context.": "Cela permet de conserver le contexte kubectl existent et de créer un contexte minikube.",
"This will start the mount daemon and automatically mount files into minikube": "Cela permet de lancer le daemon d'installation et d'installer automatiquement les fichiers dans minikube.",
"This will start the mount daemon and automatically mount files into minikube.": "Cela démarrera le démon de montage et montera automatiquement les fichiers dans minikube.",
"This {{.type}} is having trouble accessing https://{{.repository}}": "Ce {{.type}} rencontre des difficultés pour accéder à https://{{.repository}}",
"Tip: To remove this root owned cluster, run: sudo {{.cmd}}": "Astuce : Pour supprimer ce cluster appartenant à la racine, exécutez : sudo {{.cmd}}",
"Tip: To remove this root owned cluster, run: sudo {{.cmd}} delete": "Conseil : Pour supprimer ce cluster appartenant à la racine, exécutez la commande \"sudo {{.cmd}} delete\".",
"To connect to this cluster, use: --context={{.name}}": "Pour vous connecter à ce cluster, utilisez : --context={{.name}}",
"To connect to this cluster, use: kubectl --context={{.name}}": "Pour vous connecter à ce cluster, utilisez la commande \"kubectl --context={{.name}}\".",
"To connect to this cluster, use: kubectl --context={{.name}}__1": "Pour vous connecter à ce cluster, utilisez la commande \"kubectl --context={{.name}}\".",
"To connect to this cluster, use: kubectl --context={{.profile_name}}": "Pour vous connecter à ce cluster, utilisez : kubectl --context={{.profile_name}}",
"To disable beta notices, run: 'minikube config set WantBetaUpdateNotification false'": "Pour désactiver les notifications bêta, exécutez : 'minikube config set WantBetaUpdateNotification false'",
"To disable this notice, run: 'minikube config set WantUpdateNotification false'\\n": "Pour désactiver cette notification, exécutez : 'minikube config set WantUpdateNotification false'\\n",
@ -740,7 +685,6 @@
"Unable to generate docs": "Impossible de générer des documents",
"Unable to generate the documentation. Please ensure that the path specified is a directory, exists \u0026 you have permission to write to it.": "Impossible de générer la documentation. Veuillez vous assurer que le chemin spécifié est un répertoire, existe \u0026 vous avez la permission d'y écrire.",
"Unable to get CPU info: {{.err}}": "Impossible d'obtenir les informations sur le processeur : {{.err}}",
"Unable to get bootstrapper: {{.error}}": "Impossible d'obtenir l'amorceur : {{.error}}",
"Unable to get command runner": "Impossible d'obtenir le lanceur de commandes",
"Unable to get control plane status: {{.error}}": "Impossible d'obtenir l'état du plan de contrôle : {{.error}}",
"Unable to get current user": "Impossible d'obtenir l'utilisateur actuel",
@ -749,7 +693,6 @@
"Unable to get runtime": "Impossible d'obtenir l'environnement d'exécution",
"Unable to kill mount process: {{.error}}": "Impossible d'arrêter le processus de montage : {{.error}}",
"Unable to list profiles: {{.error}}": "Impossible de répertorier les profils : {{.error}}",
"Unable to load cached images from config file.": "Impossible de charger les images mises en cache depuis le fichier de configuration.",
"Unable to load cached images: {{.error}}": "Impossible de charger les images mises en cache : {{.error}}",
"Unable to load config: {{.error}}": "Impossible de charger la configuration : {{.error}}",
"Unable to load host": "Impossible de charger l'hôte",
@ -759,7 +702,6 @@
"Unable to parse memory '{{.memory}}': {{.error}}": "Impossible d'analyser la mémoire '{{.memory}}' : {{.error}}",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "Impossible d'analyser la version la plus ancienne de Kubernetes à partir des constantes : {{.error}}",
"Unable to pick a default driver. Here is what was considered, in preference order:": "Impossible de choisir un pilote par défaut. Voici ce qui a été considéré, par ordre de préférence :",
"Unable to pull images, which may be OK: {{.error}}": "Impossible d'extraire des images, qui sont peut-être au bon format : {{.error}}",
"Unable to push cached images: {{.error}}": "Impossible de pousser les images mises en cache : {{.error}}",
"Unable to remove machine directory": "Impossible de supprimer le répertoire de la machine",
"Unable to restart cluster, will reset it: {{.error}}": "Impossible de redémarrer le cluster, va être réinitialisé : {{.error}}",
@ -780,7 +722,6 @@
"Update server returned an empty list": "Le serveur de mise à jour a renvoyé une liste vide",
"Updating the running {{.driver_name}} \"{{.cluster}}\" {{.machine_type}} ...": "Mise à jour du {{.machine_type}} {{.driver_name}} en marche \"{{.cluster}}\" ...",
"Upgrade to QEMU v3.1.0+, run 'virt-host-validate', or ensure that you are not running in a nested VM environment.": "Mettez à niveau vers QEMU v3.1.0+, exécutez 'virt-host-validate' ou assurez-vous que vous n'exécutez pas dans un environnement VM imbriqué.",
"Upgrading from Kubernetes {{.old}} to {{.new}}": "Mise à niveau de Kubernetes de la version {{.old}} à la version {{.new}}…",
"Usage": "Usage",
"Usage: minikube completion SHELL": "Utilisation : minikube completion SHELL",
"Usage: minikube delete": "Utilisation: minikube delete",
@ -808,16 +749,13 @@
"Using the '{{.runtime}}' runtime with the 'none' driver is an untested configuration!": "L'utilisation du runtime '{{.runtime}}' avec le pilote 'none' est une configuration non testée !",
"Using the {{.driver}} driver based on existing profile": "Utilisation du pilote {{.driver}} basé sur le profil existant",
"Using the {{.driver}} driver based on user configuration": "Utilisation du pilote {{.driver}} basé sur la configuration de l'utilisateur",
"VM driver is one of: %v": "Le pilote de la VM appartient à : %v",
"Valid components are: {{.valid_extra_opts}}": "Les composants valides sont : {{.valid_extra_opts}}",
"Validate your KVM networks. Run: virt-host-validate and then virsh net-list --all": "Validez vos réseaux KVM. Exécutez : virt-host-validate puis virsh net-list --all",
"Validation unable to parse disk size '{{.diskSize}}': {{.error}}": "La validation n'a pas pu analyser la taille du disque '{{.diskSize}}' : {{.error}}",
"Verify that your HTTP_PROXY and HTTPS_PROXY environment variables are set correctly.": "Vérifiez que vos variables d'environnement HTTP_PROXY et HTTPS_PROXY sont correctement définies.",
"Verifying Kubernetes components...": "Vérification des composants Kubernetes...",
"Verifying dashboard health ...": "Vérification de l'état du tableau de bord...",
"Verifying proxy health ...": "Vérification de l'état du proxy...",
"Verifying {{.addon_name}} addon...": "Vérification du module {{.addon_name}}...",
"Verifying:": "Vérification :",
"Version: {{.version}}": "Version : {{.version}}",
"VirtualBox and Hyper-V are having a conflict. Use '--driver=hyperv' or disable Hyper-V using: 'bcdedit /set hypervisorlaunchtype off'": "VirtualBox et Hyper-V ont un conflit. Utilisez '--driver=hyperv' ou désactivez Hyper-V en utilisant : 'bcdedit /set hypervisorlaunchtype off'",
"VirtualBox cannot create a network, probably because it conflicts with an existing network that minikube no longer knows about. Try running 'minikube delete'": "VirtualBox ne peut pas créer de réseau, probablement parce qu'il entre en conflit avec un réseau existant que minikube ne connaît plus. Essayez d'exécuter 'minikube delete'",
@ -826,18 +764,13 @@
"VirtualBox is unable to find its network interface. Try upgrading to the latest release and rebooting.": "VirtualBox est incapable de trouver son interface réseau. Essayez de mettre à niveau vers la dernière version et de redémarrer.",
"Virtualization support is disabled on your computer. If you are running minikube within a VM, try '--driver=docker'. Otherwise, consult your systems BIOS manual for how to enable virtualization.": "La prise en charge de la virtualisation est désactivée sur votre ordinateur. Si vous exécutez minikube dans une machine virtuelle, essayez '--driver=docker'. Sinon, consultez le manuel du BIOS de votre système pour savoir comment activer la virtualisation.",
"Wait failed: {{.error}}": "Échec de l'attente : {{.error}}",
"Wait until Kubernetes core services are healthy before exiting": "Avant de quitter, veuillez patienter jusqu'à ce que les principaux services Kubernetes soient opérationnels.",
"Waiting for SSH access ...": "En attente de l'accès SSH...",
"Waiting for:": "En attente de :",
"Want kubectl {{.version}}? Try 'minikube kubectl -- get pods -A'": "Vous voulez kubectl {{.version}} ? Essayez 'minikube kubectl -- get pods -A'",
"Where to root the NFS Shares, defaults to /nfsshares (hyperkit driver only)": "Emplacement permettant d'accéder aux partages NFS en mode root, la valeur par défaut affichant /nfsshares (pilote hyperkit uniquement).",
"Whether to use external switch over Default Switch if virtual switch not explicitly specified. (hyperv driver only)": "S'il faut utiliser le commutateur externe sur le commutateur par défaut si le commutateur virtuel n'est pas explicitement spécifié. (pilote hyperv uniquement)",
"With --network-plugin=cni, you will need to provide your own CNI. See --cni flag as a user-friendly alternative": "Avec --network-plugin=cni, vous devrez fournir votre propre CNI. Voir --cni flag comme alternative conviviale",
"You appear to be using a proxy, but your NO_PROXY environment does not include the minikube IP ({{.ip_address}}).": "Vous semblez utiliser un proxy, mais votre environnement NO_PROXY n'inclut pas l'IP minikube ({{.ip_address}}).",
"You appear to be using a proxy, but your NO_PROXY environment does not include the minikube IP ({{.ip_address}}). Please see {{.documentation_url}} for more details": "Il semble que vous utilisiez un proxy, mais votre environment NO_PROXY n'inclut pas l'adresse IP ({{.ip_address}}) de minikube. Consultez la documentation à l'adresse {{.documentation_url}} pour en savoir plus.",
"You are trying to run a windows .exe binary inside WSL. For better integration please use a Linux binary instead (Download at https://minikube.sigs.k8s.io/docs/start/.). Otherwise if you still want to do this, you can do it using --force": "Vous essayez d'exécuter un binaire Windows .exe dans WSL. Pour une meilleure intégration, veuillez utiliser un binaire Linux à la place (Télécharger sur https://minikube.sigs.k8s.io/docs/start/.). Sinon, si vous voulez toujours le faire, vous pouvez le faire en utilisant --force",
"You are trying to run amd64 binary on M1 system. Please consider running darwin/arm64 binary instead (Download at {{.url}}.)": "Vous essayez d'exécuter le binaire amd64 sur le système M1. Veuillez utiliser le binaire darwin/arm64 à la place (télécharger sur {{.url}}.)",
"You are trying to run windows .exe binary inside WSL, for better integration please use Linux binary instead (Download at https://minikube.sigs.k8s.io/docs/start/.). Otherwise if you still want to do this, you can do it using --force": "Vous essayez d'exécuter le binaire Windows .exe dans WSL. Pour une meilleure intégration, veuillez utiliser le binaire Linux à la place (Télécharger sur https://minikube.sigs.k8s.io/docs/start/.). Sinon, si vous voulez toujours le faire, vous pouvez le faire en utilisant --force",
"You can delete them using the following command(s): ": "Vous pouvez les supprimer à l'aide de la ou des commandes suivantes :",
"You can force an unsupported Kubernetes version via the --force flag": "Vous pouvez forcer une version Kubernetes non prise en charge via l'indicateur --force",
"You cannot add or remove extra disks for an existing minikube cluster. Please first delete the cluster.": "Vous ne pouvez pas ajouter ou supprimer des disques supplémentaires pour un cluster minikube existant. Veuillez d'abord supprimer le cluster.",
@ -864,7 +797,6 @@
"addon '{{.name}}' is not a valid addon packaged with minikube.\nTo see the list of available addons run:\nminikube addons list": "Le module '{{.name}}' n'est pas un module valide fourni avec minikube.\nPour voir la liste des modules disponibles, exécutez :\nminikube addons list",
"addons modifies minikube addons files using subcommands like \"minikube addons enable dashboard\"": "addons modifie les fichiers de modules minikube à l'aide de sous-commandes telles que \"minikube addons enable dashboard\"",
"auto-pause addon is an alpha feature and still in early development. Please file issues to help us make it better.": "Le module auto-pause est une fonctionnalité alpha et encore en développement précoce. Veuillez signaler les problèmes pour nous aider à l'améliorer.",
"auto-pause currently is only supported on docker runtime. Track progress of others here: https://github.com/kubernetes/minikube/issues/10601": "la pause automatique n'est actuellement prise en charge que sur le runtime docker. Suivez les progrès des autres ici : https://github.com/kubernetes/minikube/issues/10601",
"bash completion failed": "échec de la complétion bash",
"bash completion.": "complétion bash",
"call with cleanup=true to remove old tunnels": "appelez avec cleanup=true pour supprimer les anciens tunnels",
@ -885,7 +817,6 @@
"error initializing tracing: {{.Error}}": "erreur d'initialisation du traçage : {{.Error}}",
"error parsing the input ip address for mount": "erreur lors de l'analyse de l'adresse IP d'entrée pour le montage",
"error provisioning guest": "erreur lors de l'approvisionnement de l'invité",
"error provisioning host": "erreur lors de l'approvisionnement de l'hôte",
"error starting tunnel": "erreur de démarrage du tunnel",
"error stopping tunnel": "erreur d'arrêt du tunnel",
"error: --output must be 'text', 'yaml' or 'json'": "erreur : --output doit être 'text', 'yaml' ou 'json'",
@ -951,7 +882,6 @@
"unable to bind flags": "impossible de lier les configurations",
"unable to daemonize: {{.err}}": "impossible de démoniser : {{.err}}",
"unable to delete minikube config folder": "impossible de supprimer le dossier de configuration de minikube",
"unable to set logtostderr": "impossible de définir logtostderr",
"unpause Kubernetes": "réactive Kubernetes",
"unset failed": "échec de la déconfiguration",
"unsets PROPERTY_NAME from the minikube config file. Can be overwritten by flags or environmental variables": "déconfigure PROPERTY_NAME du fichier de configuration de minikube. Peut-être écrasé par des arguments ou variables d'environnement",
@ -975,7 +905,6 @@
"{{ .name }}: Suggestion: {{ .suggestion}}": "{{ .name }}: Suggestion: {{ .suggestion}}",
"{{ .name }}: {{ .rejection }}": "{{ .name }} : {{ .rejection }}",
"{{.Driver}} is currently using the {{.StorageDriver}} storage driver, consider switching to overlay2 for better performance": "{{.Driver}} utilise actuellement le pilote de stockage {{.StorageDriver}}, envisagez de passer à overlay2 pour de meilleures performances",
"{{.count}} nodes stopped.": "{{.count}} nœud(s) arrêté(s).",
"{{.count}} node{{if gt .count 1}}s{{end}} stopped.": "{{.count}} nœud{{if gt .count 1}}s{{end}} arrêté{{if gt .count 1}}s{{end}}.",
"{{.driver_name}} \"{{.cluster}}\" {{.machine_type}} is missing, will recreate.": "{{.driver_name}} \"{{.cluster}}\" {{.machine_type}} est manquant, il va être recréé.",
"{{.driver_name}} couldn't proceed because {{.driver_name}} service is not healthy.": "{{.driver_name}} n'a pas pu continuer car le service {{.driver_name}} n'est pas fonctionnel.",

View File

@ -1,54 +1,54 @@
{
"\"The '{{.minikube_addon}}' addon is disabled": "「{{.minikube_addon}}」アドオンは無効化されています",
"\"{{.context}}\" context has been updated to point to {{.hostname}}:{{.port}}": "",
"\"{{.machineName}}\" does not exist, nothing to stop": "「{{.machineName}}」は存在しません。停止すべき対象がありません",
"\"{{.name}}\" profile does not exist, trying anyways.": "「{{.name}}」というプロファイルは存在しません",
"'none' driver does not support 'minikube docker-env' command": "「none」ドライバーは「minikube docker-env」コマンドをサポートしていません",
"'none' driver does not support 'minikube mount' command": "「none」ドライバーは「minikube mount」コマンドをサポートしていません",
"'none' driver does not support 'minikube podman-env' command": "「none」ドライバーは「minikube podman-env」コマンドをサポートしていません",
"'none' driver does not support 'minikube ssh' command": "「none」ドライバーは「minikube ssh」コマンドをサポートしていません",
"'none' driver does not support 'minikube ssh-host' command": "",
"'{{.driver}}' driver reported a issue that could affect the performance.": "「{{.driver}}」ドライバーがパフォーマンスに影響しうる問題を報告しました。",
"'{{.driver}}' driver reported an issue: {{.error}}": "「{{.driver}}」ドライバーがエラーを報告しました: {{.error}}",
"- Delete and recreate minikube cluster\n\t\tminikube delete\n\t\tminikube start --driver={{.driver_name}}": "",
"- Docs https://docs.docker.com/docker-for-mac/#resources": "",
"- Docs https://docs.docker.com/docker-for-windows/#resources": "",
"- Ensure your {{.driver_name}} daemon has access to enough CPU/memory resources.": "",
"- Prune unused {{.driver_name}} images, volumes, networks and abandoned containers.\n\n\t\t\t\t{{.driver_name}} system prune --volumes": "",
"- Restart your {{.driver_name}} service": "",
"- {{.logPath}}": "",
"--kvm-numa-count range is 1-8": "",
"--network flag is only valid with the docker/podman and KVM drivers, it will be ignored": "",
"127.0.0.1": "",
"\u003ctarget file absolute path\u003e must be an absolute Path. Relative Path is not allowed (example: \"/home/docker/copied.txt\")": "",
"==\u003e Audit \u003c==": "",
"==\u003e Last Start \u003c==": "",
"A VPN or firewall is interfering with HTTP access to the minikube VM. Alternatively, try a different VM driver: https://minikube.sigs.k8s.io/docs/start/": "VPN、あるいはファイアウォールによって、minkube VM への HTTP アクセスが干渉されています。他の手段として、別の VM を試してみてください: https://minikube.sigs.k8s.io/docs/start/",
"A firewall is blocking Docker the minikube VM from reaching the image repository. You may need to select --image-repository, or use a proxy.": "",
"A firewall is interfering with minikube's ability to make outgoing HTTPS requests. You may need to change the value of the HTTPS_PROXY environment variable.": "ファイアウォールによって、minikube は外側への HTTPS リクエストをすることができません。HTTPS_PROXY 環境変数の値を変える必要があるかもしれません",
"A firewall is likely blocking minikube from reaching the internet. You may need to configure minikube to use a proxy.": "ファイアウォールによって、minikube がインターネットに繋がることができてない可能性があります。minikube がプロキシーを使うように設定する必要があるかもしれません",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Kubernetes 用に生成された証明書で使用されている一連の APIサーバーの IP アドレスのセット マシンの外部から API サーバーを利用できるようにする場合に使用します",
"\"The '{{.minikube_addon}}' addon is disabled": "'{{.minikube_addon}}' アドオンが無効です",
"\"{{.context}}\" context has been updated to point to {{.hostname}}:{{.port}}": "「{{.context}}」コンテキストが更新されて、{{.hostname}}:{{.port}} を指すようになりました",
"\"{{.machineName}}\" does not exist, nothing to stop": "「{{.machineName}}」は存在しません。停止対象がありません",
"\"{{.name}}\" profile does not exist, trying anyways.": "「{{.name}}」プロファイルは存在しませんが、それでも続行します。",
"'none' driver does not support 'minikube docker-env' command": "'none' ドライバーは 'minikube docker-env' コマンドをサポートしていません",
"'none' driver does not support 'minikube mount' command": "'none' ドライバーは 'minikube mount' コマンドをサポートしていません",
"'none' driver does not support 'minikube podman-env' command": "'none' ドライバーは 'minikube podman-env' コマンドをサポートしていません",
"'none' driver does not support 'minikube ssh' command": "'none' ドライバーは 'minikube ssh' コマンドをサポートしていません",
"'none' driver does not support 'minikube ssh-host' command": "'none' ドライバーは 'minikube ssh-host' コマンドをサポートしていません",
"'{{.driver}}' driver reported a issue that could affect the performance.": "'{{.driver}}' ドライバーが性能に影響しうる問題を報告しました。",
"'{{.driver}}' driver reported an issue: {{.error}}": "'{{.driver}}' ドライバーがエラーを報告しました: {{.error}}",
"- Delete and recreate minikube cluster\n\t\tminikube delete\n\t\tminikube start --driver={{.driver_name}}": "- minikube クラスターの削除と再作成をしてください\n\t\tminikube delete\n\t\tminikube start --driver={{.driver_name}}",
"- Docs https://docs.docker.com/docker-for-mac/#resources": "- ドキュメント https://docs.docker.com/docker-for-mac/#resources",
"- Docs https://docs.docker.com/docker-for-windows/#resources": "- ドキュメント https://docs.docker.com/docker-for-windows/#resources",
"- Ensure your {{.driver_name}} daemon has access to enough CPU/memory resources.": "- {{.driver_name}} デーモンが十分な CPU/メモリーリソースを利用できることを確認してください。",
"- Prune unused {{.driver_name}} images, volumes, networks and abandoned containers.\n\n\t\t\t\t{{.driver_name}} system prune --volumes": "- 使用していない {{.driver_name}} イメージ、ボリューム、ネットワーク、コンテナーを削除してください。\n\n\t\t\t\t{{.driver_name}} system prune --volumes",
"- Restart your {{.driver_name}} service": "{{.driver_name}} サービスを再起動してください",
"- {{.logPath}}": "- {{.logPath}}",
"--kvm-numa-count range is 1-8": "--kvm-numa-count の範囲は 18 です",
"--network flag is only valid with the docker/podman and KVM drivers, it will be ignored": "--network フラグは、docker/podman および KVM ドライバーでのみ有効であるため、無視されます",
"127.0.0.1": "127.0.0.1",
"\u003ctarget file absolute path\u003e must be an absolute Path. Relative Path is not allowed (example: \"/home/docker/copied.txt\")": "\u003ctarget file absolute path\u003e は絶対パスでなければなりません。相対パスは使用できません (例:「/home/docker/copied.txt」)",
"==\u003e Audit \u003c==": "==\u003e Audit \u003c==",
"==\u003e Last Start \u003c==": "==\u003e Last Start \u003c==",
"A VPN or firewall is interfering with HTTP access to the minikube VM. Alternatively, try a different VM driver: https://minikube.sigs.k8s.io/docs/start/": "VPN、あるいはファイアウォールによって、minkube VM への HTTP アクセスが干渉されています。他の手段として、別の VM ドライバーを試してみてください: https://minikube.sigs.k8s.io/docs/start/",
"A firewall is blocking Docker the minikube VM from reaching the image repository. You may need to select --image-repository, or use a proxy.": "Docker の minikube VM がイメージリポジトリーに到達するのを、ファイアウォールがブロックしています。--image-repository を指定するか、プロキシーを使用する必要があるかもしれません。",
"A firewall is interfering with minikube's ability to make outgoing HTTPS requests. You may need to change the value of the HTTPS_PROXY environment variable.": "ファイアウォールによって、minikube は外側への HTTPS リクエストをすることができません。HTTPS_PROXY 環境変数の値を変える必要があるかもしれません",
"A firewall is likely blocking minikube from reaching the internet. You may need to configure minikube to use a proxy.": "ファイアウォールによって、minikube がインターネットに接続できていない可能性があります。minikube がプロキシーを使用するように設定する必要があるかもしれません",
"A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Kubernetes 用に生成された証明書で使用される一連の API サーバーの IP アドレス。マシンの外部から API サーバーを利用できるようにする場合に使用します",
"A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine": "Kubernetes 用に生成された証明書で使用される一連の API サーバー名。マシンの外部から API サーバーを利用できるようにする場合に使用します",
"A set of key=value pairs that describe feature gates for alpha/experimental features.": "アルファ版または試験運用版の機能のフィーチャーゲートを記述する一連の key=value ペアです",
"Access the Kubernetes dashboard running within the minikube cluster": "minikube クラスタ内で動いている Kubernetes のダッシュボードにアクセスします",
"Access to ports below 1024 may fail on Windows with OpenSSH clients older than v8.1. For more information, see: https://minikube.sigs.k8s.io/docs/handbook/accessing/#access-to-ports-1024-on-windows-requires-root-permission": "",
"Add SSH identity key to SSH authentication agent": "",
"Add an image to local cache.": "イメージをローカルキャッシュに追加します",
"Add host key to SSH known_hosts file": "",
"Add image to cache for all running minikube clusters": "",
"Add machine IP to NO_PROXY environment variable": "マシンの IP アドレスをNO_PROXY 環境変数に追加します",
"Add, delete, or push a local image into minikube": "ローカルイメージをminikubeに追加、削除、またはプッシュします",
"A set of key=value pairs that describe feature gates for alpha/experimental features.": "アルファ版または試験運用版の機能のフィーチャーゲートを記述する一連の key=value ペアです",
"Access the Kubernetes dashboard running within the minikube cluster": "minikube クラスタ内で動いている Kubernetes のダッシュボードにアクセスします",
"Access to ports below 1024 may fail on Windows with OpenSSH clients older than v8.1. For more information, see: https://minikube.sigs.k8s.io/docs/handbook/accessing/#access-to-ports-1024-on-windows-requires-root-permission": "Windows で v8.1 より古い OpenSSH クライアントを使用している場合、1024 未満のポートへのアクセスに失敗することがあります。詳細はこちら: https://minikube.sigs.k8s.io/docs/handbook/accessing/#access-to-ports-1024-on-windows-requires-root-permission",
"Add SSH identity key to SSH authentication agent": "SSH 認証エージェントに SSH 鍵を追加します",
"Add an image to local cache.": "イメージをローカルキャッシュに追加します",
"Add host key to SSH known_hosts file": "SSH known_hosts ファイルにホストキーを追加します",
"Add image to cache for all running minikube clusters": "実行中のすべての minikube クラスターのキャッシュに、イメージを追加します",
"Add machine IP to NO_PROXY environment variable": "マシンの IP アドレスを NO_PROXY 環境変数に追加します",
"Add, delete, or push a local image into minikube": "ローカルイメージを minikube に追加、削除、またはプッシュします",
"Add, remove, or list additional nodes": "追加のノードを追加、削除またはリストアップします",
"Adding node {{.name}} to cluster {{.cluster}}": "「{{.name}}」というノードを「{{.cluster}}」というクラスタに追加します",
"Adding node {{.name}} to cluster {{.cluster}}": "{{.name}} ノードを {{.cluster}} クラスターに追加します",
"Additional help topics": "追加のトピック",
"Additional mount options, such as cache=fscache": "cache=fscache などの追加のマウントオプション",
"Adds a node to the given cluster config, and starts it.": "ノードをクラスタの設定に追加して、起動します",
"Adds a node to the given cluster.": "ノードをクラスタに追加します",
"Adds a node to the given cluster config, and starts it.": "ノードをクラスタの設定に追加して、起動します",
"Adds a node to the given cluster.": "ノードをクラスタに追加します",
"Advanced Commands:": "高度なコマンド:",
"After the addon is enabled, please run \"minikube tunnel\" and your ingress resources would be available at \"127.0.0.1\"": "",
"After the addon is enabled, please run \"minikube tunnel\" and your ingress resources would be available at \"127.0.0.1\"": "アドオンを有効にした後、「minikube tunnel」を実行することで、ingress リソースが「127.0.0.1」で利用可能になります",
"Aliases": "エイリアス",
"All existing scheduled stops cancelled": "",
"Allow user prompts for more information": "",
"All existing scheduled stops cancelled": "既存のスケジュールされていたすべての停止がキャンセルされました",
"Allow user prompts for more information": "ユーザーによる詳細情報の入力をできるようにします",
"Alternative image repository to pull docker images from. This can be used when you have limited access to gcr.io. Set it to \\\"auto\\\" to let minikube decide one for you. For Chinese mainland users, you may use local gcr.io mirrors such as registry.cn-hangzhou.aliyuncs.com/google_containers": "Docker イメージの pull 元の代替イメージ リポジトリ。これは、gcr.io へのアクセスが制限されている場合に使用できます。これを \\\"auto\\\" に設定すると、minikube によって自動的に指定されるようになります。中国本土のユーザーの場合、registry.cn-hangzhou.aliyuncs.com/google_containers などのローカル gcr.io ミラーを使用できます",
"Amount of RAM to allocate to Kubernetes (format: \u003cnumber\u003e[\u003cunit\u003e], where unit = b, k, m or g).": "Kubernetesに割り当てられた RAM 容量(形式: \u003cnumber\u003e[\u003cunit\u003e]、unit = b、k、m、g",
"Amount of time to wait for a service in seconds": "",
@ -152,6 +152,7 @@
"Documentation: {{.url}}": "ドキュメント: {{.url}}",
"Done! kubectl is now configured to use \"{{.name}}\"": "完了しました! kubectl が「\"{{.name}}\"」を使用するよう構成されました",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "完了しました! kubectl が「\"{{.name}}\"」クラスタと「\"{{.ns}}\"」ネームスペースを使用するよう構成されました",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "ダウンロードが完了しました",
"Downloading Kubernetes {{.version}} preload ...": "Kubernetes {{.version}} のダウンロードの準備をしています",
"Downloading VM boot image ...": "VM ブートイメージをダウンロードしています...",
@ -304,7 +305,7 @@
"Group ID: {{.groupID}}": "グループ ID: {{.groupID}}",
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "minikube でゲストに対し、ハイパーバイザ署名を非表示にしますkvm2 ドライバのみ)",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"IP Address to use to expose ports (docker and podman driver only)": "",
"IP address (ssh driver only)": "",
"If present, writes to the provided file instead of stdout.": "",
@ -313,6 +314,7 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "",
"If set, install addons. Defaults to true.": "",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "",
"If set, unpause all namespaces": "",
"If the above advice does not help, please let us know:": "",
@ -574,8 +576,9 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "",
"StartHost failed, but will try again: {{.error}}": "",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "コントロールプレーンのノード {{.name}} を {{.cluster}} 上で起動しています",
"Starting node {{.name}} in cluster {{.cluster}}": "",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting tunnel for service {{.service}}.": "",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "ローカル Kubernetes クラスタを起動します",
"Starts a local kubernetes cluster": "ローカル Kubernetes クラスタを起動します",
"Starts a node.": "",
@ -643,44 +646,44 @@
"The control plane node must be running for this command": "このコマンドではコントロールプレーンノードが実行中でなければなりません",
"The cri socket path to be used": "使用される CRI ソケットパス",
"The cri socket path to be used.": "使用される CRI ソケットパス。",
"The docker-env command is incompatible with multi-node clusters. Use the 'registry' add-on: https://minikube.sigs.k8s.io/docs/handbook/registry/": "",
"The docker-env command is only compatible with the \"docker\" runtime, but this cluster was configured to use the \"{{.runtime}}\" runtime.": "",
"The driver '{{.driver}}' is not supported on {{.os}}/{{.arch}}": "ドライバ「{{.driver}}」は、{{.os}}/{{.arch}} ではサポートされていません",
"The existing \"{{.name}}\" cluster was created using the \"{{.old}}\" driver, which is incompatible with requested \"{{.new}}\" driver.": "",
"The existing node configuration appears to be corrupt. Run 'minikube delete'": "",
"The heapster addon is depreciated. please try to disable metrics-server instead": "",
"The hyperv virtual switch name. Defaults to first found. (hyperv driver only)": "hyperv 仮想スイッチ名。最初に見つかったものにデフォルト設定されますhyperv ドライバのみ)",
"The hypervisor does not appear to be configured properly. Run 'minikube start --alsologtostderr -v=1' and inspect the error code": "",
"The image '{{.imageName}}' was not found; unable to add it to cache.": "",
"The initial time interval for each check that wait performs in seconds": "",
"The kubeadm binary within the Docker container is not executable": "",
"The kubernetes version that the minikube VM will use (ex: v1.2.3)": "minikube VM で使用される Kubernetes バージョン(例: v1.2.3",
"The machine-driver specified is failing to start. Try running 'docker-machine-driver-\u003ctype\u003e version'": "",
"The minikube VM is offline. Please run 'minikube start' to start it again.": "",
"The minikube {{.driver_name}} container exited unexpectedly.": "",
"The minimum required version for podman is \"{{.minVersion}}\". your version is \"{{.currentVersion}}\". minikube might not work. use at your own risk. To install latest version please see https://podman.io/getting-started/installation.html": "",
"The name of the network plugin": "ネットワーク プラグインの名前",
"The named space to activate after start": "",
"The node to build on. Defaults to the primary control plane.": "",
"The node to check status for. Defaults to control plane. Leave blank with default format for status on all nodes.": "",
"The node to get IP. Defaults to the primary control plane.": "",
"The node to get logs from. Defaults to the primary control plane.": "",
"The node to get ssh-key path. Defaults to the primary control plane.": "",
"The node to ssh into. Defaults to the primary control plane.": "",
"The node {{.name}} has ran out of available PIDs.": "",
"The node {{.name}} has ran out of disk space.": "",
"The node {{.name}} has ran out of memory.": "",
"The node {{.name}} network is not available. Please verify network settings.": "",
"The none driver is not compatible with multi-node clusters.": "",
"The number of bytes to use for 9p packet payload": "",
"The number of nodes to spin up. Defaults to 1.": "",
"The output format. One of 'json', 'table'": "",
"The path on the file system where the docs in markdown need to be saved": "",
"The path on the file system where the error code docs in markdown need to be saved": "",
"The path on the file system where the testing docs in markdown need to be saved": "",
"The podman service within '{{.cluster}}' is not active": "",
"The podman-env command is incompatible with multi-node clusters. Use the 'registry' add-on: https://minikube.sigs.k8s.io/docs/handbook/registry/": "",
"The requested memory allocation of {{.requested}}MiB does not leave room for system overhead (total system memory: {{.system_limit}}MiB). You may face stability issues.": "",
"The docker-env command is incompatible with multi-node clusters. Use the 'registry' add-on: https://minikube.sigs.k8s.io/docs/handbook/registry/": "docker-env コマンドはマルチノードクラスターと互換性がありません。'registry' アドオンを使用してください: https://minikube.sigs.k8s.io/docs/handbook/registry/",
"The docker-env command is only compatible with the \"docker\" runtime, but this cluster was configured to use the \"{{.runtime}}\" runtime.": "docker-env コマンドは「docker」ランタイムとだけ互換性がありますが、このクラスターは「{{.runtime}}」ランタイムを使用するよう設定されています。",
"The driver '{{.driver}}' is not supported on {{.os}}/{{.arch}}": "'{{.driver}}' ドライバーは {{.os}}/{{.arch}} に対応していません",
"The existing \"{{.name}}\" cluster was created using the \"{{.old}}\" driver, which is incompatible with requested \"{{.new}}\" driver.": "既存の「{{.name}}」クラスターは、(要求された「{{.new}}」ドライバーとは互換性のない)「{{.old}}」ドライバーを使用して作成されました。 ",
"The existing node configuration appears to be corrupt. Run 'minikube delete'": "既存のノード設定が破損しているようです。'minikube delete' を実行してください",
"The heapster addon is depreciated. please try to disable metrics-server instead": "heapster アドオンは廃止予定です。代わりに metrics-server を無効化してみてください",
"The hyperv virtual switch name. Defaults to first found. (hyperv driver only)": "hyperv 仮想スイッチ名。デフォルト値は最初に見つかったスイッチ名です。 (hyperv ドライバーのみ)",
"The hypervisor does not appear to be configured properly. Run 'minikube start --alsologtostderr -v=1' and inspect the error code": "ハイパーバイザーが適切に設定されていないようです。'minikube start --alsologtostderr -v=1' を実行してエラーコードを確認してください",
"The image '{{.imageName}}' was not found; unable to add it to cache.": "'{{.imageName}}' イメージは見つかりませんでした (キャッシュに追加できません)。",
"The initial time interval for each check that wait performs in seconds": "実行待機チェックの初期時間間隔 (秒)",
"The kubeadm binary within the Docker container is not executable": "Docker コンテナー内の kubeadm バイナリーが実行可能形式ではありません",
"The kubernetes version that the minikube VM will use (ex: v1.2.3)": "minikube VM で使用する Kubernetes バージョン (例: v1.2.3)",
"The machine-driver specified is failing to start. Try running 'docker-machine-driver-\u003ctype\u003e version'": "指定された machine-driver は起動に失敗しました。'docker-machine-driver-\u003ctype\u003e version' を実行してみてください",
"The minikube VM is offline. Please run 'minikube start' to start it again.": "minikube VM がオフラインです。'minikube start' を実行して minikube VM を再起動してください。",
"The minikube {{.driver_name}} container exited unexpectedly.": "minikube {{.driver_name}} コンテナーは想定外で終了しました。",
"The minimum required version for podman is \"{{.minVersion}}\". your version is \"{{.currentVersion}}\". minikube might not work. use at your own risk. To install latest version please see https://podman.io/getting-started/installation.html": "minikube が要求する podman のバージョンは「{{.minVersion}}」です。あなたのバージョンは「{{.currentVersion}}」です。minikube は動作しないかも知れません。自己責任で使用してください。最新バージョンのインストールには https://podman.io/getting-started/installation.html を参照してください。",
"The name of the network plugin": "ネットワークプラグインの名前",
"The named space to activate after start": "起動後にアクティベートするネームスペース",
"The node to build on. Defaults to the primary control plane.": "構築するノード。デフォルトは最初のコントロールプレーンです。",
"The node to check status for. Defaults to control plane. Leave blank with default format for status on all nodes.": "状態をチェックするノード。デフォルトはコントロールプレーンです。デフォルトフォーマットの空白のままにすると、全ノードの状態になります。",
"The node to get IP. Defaults to the primary control plane.": "IP を取得するノード。デフォルトは最初のコントロールプレーンです。",
"The node to get logs from. Defaults to the primary control plane.": "ログを取得するノード。デフォルトは最初のコントロールプレーンです。",
"The node to get ssh-key path. Defaults to the primary control plane.": "ssh-key パスを取得するノード。デフォルトは最初のコントロールプレーンです。",
"The node to ssh into. Defaults to the primary control plane.": "ssh ログインするノード。デフォルトは最初のコントロールプレーンです。",
"The node {{.name}} has ran out of available PIDs.": "{{.name}} ノードは利用可能な PID を使い果たしました。",
"The node {{.name}} has ran out of disk space.": "{{.name}} ノードはディスクスペースを使い果たしました。",
"The node {{.name}} has ran out of memory.": "{{.name}} ノードはメモリーを使い果たしました。",
"The node {{.name}} network is not available. Please verify network settings.": "{{.name}} ノードはネットワークが使用不能です。ネットワーク設定を検証してください。",
"The none driver is not compatible with multi-node clusters.": "ノードドライバーはマルチノードクラスターと互換性がありません。",
"The number of bytes to use for 9p packet payload": "9p パケットペイロードに使用するバイト数",
"The number of nodes to spin up. Defaults to 1.": "起動するノード数。デフォルトは 1。",
"The output format. One of 'json', 'table'": "出力形式。'json', 'table' のいずれか",
"The path on the file system where the docs in markdown need to be saved": "markdown で書かれたドキュメントの保存先のファイルシステムパス",
"The path on the file system where the error code docs in markdown need to be saved": "markdown で書かれたエラーコードドキュメントの保存先のファイルシステムパス",
"The path on the file system where the testing docs in markdown need to be saved": "markdown で書かれたテストドキュメントの保存先のファイルシステムパス",
"The podman service within '{{.cluster}}' is not active": "'{{.cluster}}' 内の podman サービスが active ではありません",
"The podman-env command is incompatible with multi-node clusters. Use the 'registry' add-on: https://minikube.sigs.k8s.io/docs/handbook/registry/": "podman-env コマンドはマルチノードクラスターと互換性がありません。'registry' アドオンを使用してください: https://minikube.sigs.k8s.io/docs/handbook/registry/",
"The requested memory allocation of {{.requested}}MiB does not leave room for system overhead (total system memory: {{.system_limit}}MiB). You may face stability issues.": "要求された {{.requested}}MiB のメモリー割当は、システムのオーバーヘッド (合計システムメモリー: {{.system_limit}}MiB) に十分な空きを残しません。安定性の問題に直面するかも知れません。",
"The service namespace": "",
"The service/ingress {{.resource}} requires privileged ports to be exposed: {{.ports}}": "",
"The services namespace": "",
@ -691,63 +694,64 @@
"There's a new version for '{{.driver_executable}}'. Please consider upgrading. {{.documentation_url}}": "「{{.driver_executable}}」の新しいバージョンがあります。アップグレードを検討してください。{{.documentation_url}}",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "",
"These changes will take effect upon a minikube delete and then a minikube start": "",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "これは環境変数 CHANGE_MINIKUBE_NONE_USER=true を設定して自動的に行うこともできます",
"This control plane is not running! (state={{.state}})": "",
"This driver does not yet work on your architecture. Maybe try --driver=none": "",
"This is a known issue with BTRFS storage driver, there is a workaround, please checkout the issue on GitHub": "",
"This is unusual - you may want to investigate using \"{{.command}}\"": "",
"This will keep the existing kubectl context and will create a minikube context.": "これにより既存の kubectl コンテキストが保持され、minikube コンテキストが作成されます",
"This will start the mount daemon and automatically mount files into minikube": "これによりマウント デーモンが起動し、ファイルが minikube に自動的にマウントされます",
"This will start the mount daemon and automatically mount files into minikube.": "",
"This {{.type}} is having trouble accessing https://{{.repository}}": "",
"Tip: To remove this root owned cluster, run: sudo {{.cmd}}": "",
"Tip: To remove this root owned cluster, run: sudo {{.cmd}} delete": "ヒント: この root 所有のクラスタを削除するには、「sudo {{.cmd}} delete」を実行します",
"To connect to this cluster, use: --context={{.name}}": "",
"To connect to this cluster, use: kubectl --context={{.name}}": "このクラスタに接続するには、「kubectl --context={{.name}}」を使用します",
"To connect to this cluster, use: kubectl --context={{.name}}__1": "このクラスタに接続するには、「kubectl --context={{.name}}」を使用します",
"To connect to this cluster, use: kubectl --context={{.profile_name}}": "",
"To disable beta notices, run: 'minikube config set WantBetaUpdateNotification false'": "",
"To disable this notice, run: 'minikube config set WantUpdateNotification false'\\n": "",
"To disable update notices in general, run: 'minikube config set WantUpdateNotification false'\\n": "",
"To pull new external images, you may need to configure a proxy: https://minikube.sigs.k8s.io/docs/reference/networking/proxy/": "",
"To see addons list for other profiles use: `minikube addons -p name list`": "",
"To set your Google Cloud project, run:\n\n\t\tgcloud config set project \u003cproject name\u003e\n\nor set the GOOGLE_CLOUD_PROJECT environment variable.": "",
"To start a cluster, run: \"{{.command}}\"": "",
"To start minikube with Hyper-V, Powershell must be in your PATH`": "",
"To use kubectl or minikube commands as your own user, you may need to relocate them. For example, to overwrite your own settings, run:": "kubectl か minikube コマンドを独自のユーザーとして使用するには、そのコマンドの再配置が必要な場合があります。たとえば、独自の設定を上書きするには、以下を実行します",
"This is unusual - you may want to investigate using \"{{.command}}\"": "これは異常です - 「{{.command}}」を使って調査できます",
"This will keep the existing kubectl context and will create a minikube context.": "これにより既存の kubectl コンテキストが保持され、minikube コンテキストが作成されます",
"This will start the mount daemon and automatically mount files into minikube": "これによりマウントデーモンが起動し、ファイルが minikube に自動的にマウントされます",
"This will start the mount daemon and automatically mount files into minikube.": "これによりマウントデーモンが起動し、ファイルが minikube に自動的にマウントされます。",
"This {{.type}} is having trouble accessing https://{{.repository}}": "この {{.type}} は https://{{.repository}} アクセスにおける問題があります",
"Tip: To remove this root owned cluster, run: sudo {{.cmd}}": "ヒント: この root 所有クラスターの削除コマンド: sudo {{.cmd}}",
"Tip: To remove this root owned cluster, run: sudo {{.cmd}} delete": "ヒント: この root 所有クラスターの削除コマンド: sudo {{.cmd}} delete",
"To connect to this cluster, use: --context={{.name}}": "このクラスターに接続するためには、--context={{.name}} を使用します",
"To connect to this cluster, use: kubectl --context={{.name}}": "このクラスターに接続するためには、kubectl --context={{.name}} を使用します",
"To connect to this cluster, use: kubectl --context={{.name}}__1": "このクラスターに接続するためには、kubectl --context={{.name}} を使用します",
"To connect to this cluster, use: kubectl --context={{.profile_name}}": "このクラスターに接続するためには、kubectl --context={{.profile_name}} を使用します",
"To disable beta notices, run: 'minikube config set WantBetaUpdateNotification false'": "ベータ通知を無効にするためには、'minikube config set WantBetaUpdateNotification false' を実行します",
"To disable this notice, run: 'minikube config set WantUpdateNotification false'\\n": "この通知を無効にするためには、'minikube config set WantUpdateNotification false' を実行します\\n",
"To disable update notices in general, run: 'minikube config set WantUpdateNotification false'\\n": "全体的に更新通知を無効にするためには、'minikube config set WantUpdateNotification false' を実行します\\n",
"To pull new external images, you may need to configure a proxy: https://minikube.sigs.k8s.io/docs/reference/networking/proxy/": "外部イメージを取得するためには、プロキシーを設定する必要があるかも知れません: https://minikube.sigs.k8s.io/docs/reference/networking/proxy/",
"To see addons list for other profiles use: `minikube addons -p name list`": "他のプロファイル用のアドオン一覧を表示するためには、`minikube addons -p name list` を実行します",
"To set your Google Cloud project, run:\n\n\t\tgcloud config set project \u003cproject name\u003e\n\nor set the GOOGLE_CLOUD_PROJECT environment variable.": "Google Cloud プロジェクトを設定するためには、\n\n\t\tgcloud config set project \u003cproject name\u003e\n\n を実行するか、環境変数 GOOGLE_CLOUD_PROJECT を設定します。",
"To start a cluster, run: \"{{.command}}\"": "クラスターを起動するためには、「{{.command}}」を実行します",
"To start minikube with Hyper-V, Powershell must be in your PATH`": "Hyper-V で minikube を起動するためには、PATH 中に Powershell がなければなりません",
"To use kubectl or minikube commands as your own user, you may need to relocate them. For example, to overwrite your own settings, run:": "kubectl か minikube コマンドを独自のユーザーとして使用するためには、そのコマンドの再配置が必要な場合があります。たとえば、独自の設定を上書きするためには、以下を実行します",
"Troubleshooting Commands:": "トラブルシュート用コマンド:",
"Try 'minikube delete' to force new SSL certificates to be installed": "",
"Try 'minikube delete', and disable any conflicting VPN or firewall software": "",
"Trying to delete invalid profile {{.profile}}": "",
"Unable to bind flags": "",
"Unable to create dedicated network, this might result in cluster IP change after restart: {{.error}}": "",
"Unable to enable dashboard": "",
"Unable to fetch latest version info": "",
"Unable to find control plane": "",
"Unable to generate docs": "",
"Unable to generate the documentation. Please ensure that the path specified is a directory, exists \u0026 you have permission to write to it.": "",
"Unable to get CPU info: {{.err}}": "",
"Unable to get bootstrapper: {{.error}}": "ブートストラッパを取得できません。{{.error}}",
"Unable to get command runner": "",
"Unable to get control plane status: {{.error}}": "",
"Unable to get current user": "",
"Unable to get forwarded endpoint": "",
"Unable to get machine status": "",
"Unable to get runtime": "",
"Unable to kill mount process: {{.error}}": "",
"Unable to list profiles: {{.error}}": "",
"Unable to load cached images from config file.": "キャッシュに保存されているイメージを構成ファイルから読み込むことができません",
"Unable to load cached images: {{.error}}": "",
"Unable to load config: {{.error}}": "構成を読み込むことができません。{{.error}}",
"Unable to load host": "",
"Unable to load profile: {{.error}}": "",
"Unable to parse \"{{.kubernetes_version}}\": {{.error}}": "「{{.kubernetes_version}}」を解析できません{{.error}}",
"Unable to parse default Kubernetes version from constants: {{.error}}": "",
"Unable to parse memory '{{.memory}}': {{.error}}": "",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "",
"Unable to pick a default driver. Here is what was considered, in preference order:": "",
"Unable to pull images, which may be OK: {{.error}}": "イメージを pull できませんが、問題ありません。{{.error}}",
"Try 'minikube delete' to force new SSL certificates to be installed": "新しい SSL 証明書を強制インストールするためには、'minikube delete' を試してください",
"Try 'minikube delete', and disable any conflicting VPN or firewall software": "'minikube delete' を試して、衝突している VPN あるいはファイアウォールソフトウェアを無効化してください",
"Trying to delete invalid profile {{.profile}}": "無効なプロファイル {{.profile}} を削除中",
"Unable to bind flags": "フラグをバインドできません",
"Unable to create dedicated network, this might result in cluster IP change after restart: {{.error}}": "独立したネットワークの作成ができず、再起動後にクラスター IP が変更される結果になるかも知れません: {{.error}}",
"Unable to enable dashboard": "ダッシュボードが有効になりません",
"Unable to fetch latest version info": "最新バージョン情報を取得できません",
"Unable to find control plane": "コントロールプレーンが見つかりません",
"Unable to generate docs": "ドキュメントを生成できません",
"Unable to generate the documentation. Please ensure that the path specified is a directory, exists \u0026 you have permission to write to it.": "ドキュメントを生成できません。指定されたパスが、書き込み権限が付与された既存のディレクトリーかどうか確認してください。",
"Unable to get CPU info: {{.err}}": "CPU 情報が取得できません: {{.err}}",
"Unable to get bootstrapper: {{.error}}": "ブートストラッパーを取得できません: {{.error}}",
"Unable to get command runner": "コマンドランナーを取得できません",
"Unable to get control plane status: {{.error}}": "コントロールプレーンの状態を取得できません: {{.error}}",
"Unable to get current user": "現在のユーザーを取得できません",
"Unable to get forwarded endpoint": "フォワードされたエンドポイントを取得できません",
"Unable to get machine status": "マシンの状態を取得できません",
"Unable to get runtime": "ランタイムを取得できません",
"Unable to kill mount process: {{.error}}": "mount プロセスを停止できません: {{.error}}",
"Unable to list profiles: {{.error}}": "プロファイルのリストを作成できません: {{.error}}",
"Unable to load cached images from config file.": "キャッシュされたイメージを設定ファイルから読み込めません。",
"Unable to load cached images: {{.error}}": "キャッシュされたイメージを読み込めません: {{.error}}",
"Unable to load config: {{.error}}": "設定を読み込めません: {{.error}}",
"Unable to load host": "ホストを読み込めません",
"Unable to load profile: {{.error}}": "プロファイルを読み込めません: {{.error}}",
"Unable to parse \"{{.kubernetes_version}}\": {{.error}}": "「{{.kubernetes_version}}」を解析できません: {{.error}}",
"Unable to parse default Kubernetes version from constants: {{.error}}": "定数からデフォルトの Kubernetes バージョンを解析できません: {{.error}}",
"Unable to parse memory '{{.memory}}': {{.error}}": "メモリー '{{.memory}}' を解析できません: {{.error}}",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "定数から最古の Kubernetes バージョンを解析できません: {{.error}}",
"Unable to pick a default driver. Here is what was considered, in preference order:": "デフォルトドライバーを採用できませんでした。こちらが可能性の高い順に考えられる事です:",
"Unable to pull images, which may be OK: {{.error}}": "イメージを取得できませんが、問題ありません。{{.error}}",
"Unable to push cached images: {{.error}}": "",
"Unable to remove machine directory": "",
"Unable to restart cluster, will reset it: {{.error}}": "",
@ -797,57 +801,57 @@
"Using image {{.registry}}{{.image}} (global image repository)": "イメージ {{.registry}}{{.image}}(グローバルイメージリポジトリ) を使用しています",
"Using the '{{.runtime}}' runtime with the 'none' driver is an untested configuration!": "「 none 」ドライバで「 {{.runtime}} 」ランタイムを使用することは、テストされていない設定です!",
"Using the {{.driver}} driver based on existing profile": "プロフィールを元に、 {{.driver}} ドライバを使用します",
"Using the {{.driver}} driver based on user configuration": "設定を元に、 {{.driver}} ドライバを使用します",
"VM driver is one of: %v": "VM ドライバは次のいずれかです。%v",
"Valid components are: {{.valid_extra_opts}}": "",
"Validate your KVM networks. Run: virt-host-validate and then virsh net-list --all": "",
"Validation unable to parse disk size '{{.diskSize}}': {{.error}}": "検証中に、ディスクのサイズ( {{.diskSize}} )をパースできませんでした。{{.error}}",
"Verify that your HTTP_PROXY and HTTPS_PROXY environment variables are set correctly.": "HTTP_PROXY と HTTPS_PROXY 環境変数が正常に設定されているかを確認します",
"Verify the IP address of the running cluster in kubeconfig.": "Kubernetes の設定ファイルのクラスタの IP アドレスを確認します",
"Using the {{.driver}} driver based on user configuration": "ユーザーの設定に基づいて {{.driver}} ドライバーを使用します",
"VM driver is one of: %v": "VM ドライバーは次のいずれかです: %v",
"Valid components are: {{.valid_extra_opts}}": "有効なコンポーネント: {{.valid_extra_opts}}",
"Validate your KVM networks. Run: virt-host-validate and then virsh net-list --all": "virt-host-validate 実行後に virsh net-list --all を実行して KVM ネットワークを検証してください",
"Validation unable to parse disk size '{{.diskSize}}': {{.error}}": "検証機能がディスクのサイズ '{{.diskSize}}' をパースできませんでした: {{.error}}",
"Verify that your HTTP_PROXY and HTTPS_PROXY environment variables are set correctly.": "HTTP_PROXY と HTTPS_PROXY 環境変数が正しく設定されているかを確認してください。",
"Verify the IP address of the running cluster in kubeconfig.": "kubeconfig 内の実行中のクラスターの IP アドレスを確認してください。",
"Verifying Kubernetes components...": "Kubernetes コンポーネントを検証しています...",
"Verifying dashboard health ...": "ダッシュボードの状態を確認しています...",
"Verifying proxy health ...": "プロキシの状態を確認しています...",
"Verifying {{.addon_name}} addon...": "{{.addon_name}} アドオンを検証中です...",
"Verifying dashboard health ...": "ダッシュボードの状態を検証しています...",
"Verifying proxy health ...": "プロキシーの状態を検証しています...",
"Verifying {{.addon_name}} addon...": "{{.addon_name}} アドオンを検証しています...",
"Version: {{.version}}": "バージョン: {{.version}}",
"VirtualBox and Hyper-V are having a conflict. Use '--driver=hyperv' or disable Hyper-V using: 'bcdedit /set hypervisorlaunchtype off'": "VirtualBox と Hyper-V が衝突しています。「 --driver=hyperv 」を使用するか、以下のコマンドで Hyper-V を無効にしてください。 bcdedit /set hypervisorlaunchtype off",
"VirtualBox cannot create a network, probably because it conflicts with an existing network that minikube no longer knows about. Try running 'minikube delete'": "VirtualBox がネットワークを作成できません。おそらく minikube が把握していないネットワークと衝突しています。「 minikube delete 」を実行してみてください",
"VirtualBox is broken. Disable real-time anti-virus software, reboot, and reinstall VirtualBox if the problem continues.": "VirtualBox が故障しています。アンチウィルスソフトを無効にして、リブートしてください。もし問題が続くようであれば、 VirtualBox を再インストールしてください",
"VirtualBox is broken. Reinstall VirtualBox, reboot, and run 'minikube delete'.": "VirtualBox が故障しています。 VirtualBox を再インストールして、リブートした後に、「 minikube delete 」を実行してください",
"VirtualBox is unable to find its network interface. Try upgrading to the latest release and rebooting.": "VirtualBox はネットワークインターフェイスを見つけることができません。最新のリリースへとアップデートして、リブートしてみてください",
"Virtualization support is disabled on your computer. If you are running minikube within a VM, try '--driver=docker'. Otherwise, consult your systems BIOS manual for how to enable virtualization.": "このコンピュータでは仮想化のサポートが無効化されています。もし VM で minikube を動かすのであれば、「 --driver=docker 」を試してみてください。そうでなければ、仮想化を有効にする方法を BIOS の説明書を調べてください",
"Wait failed: {{.error}}": "待機するのに失敗しました。{{.error}}",
"Wait until Kubernetes core services are healthy before exiting": "Kubernetes コアサービスが正常になるまで待機してから終了してください",
"Want kubectl {{.version}}? Try 'minikube kubectl -- get pods -A'": "",
"Where to root the NFS Shares, defaults to /nfsshares (hyperkit driver only)": "NFS 共有のルートに指定する場所。デフォルトは /nfsshareshyperkit ドライバのみ)",
"Whether to use external switch over Default Switch if virtual switch not explicitly specified. (hyperv driver only)": "仮想スイッチが明示的に設定されていない場合、デフォルトのではなく外部のスイッチを使用します。Hyper-V ドライバのみ)",
"With --network-plugin=cni, you will need to provide your own CNI. See --cni flag as a user-friendly alternative": "",
"You appear to be using a proxy, but your NO_PROXY environment does not include the minikube IP ({{.ip_address}}).": "",
"You appear to be using a proxy, but your NO_PROXY environment does not include the minikube IP ({{.ip_address}}). Please see {{.documentation_url}} for more details": "プロキシを使用しようとしていますが、現在の NO_PROXY 環境に minikube IP{{.ip_address}})は含まれていません。詳細については、{{.documentation_url}} をご覧ください",
"You are trying to run a windows .exe binary inside WSL. For better integration please use a Linux binary instead (Download at https://minikube.sigs.k8s.io/docs/start/.). Otherwise if you still want to do this, you can do it using --force": "",
"You are trying to run amd64 binary on M1 system. Please consider running darwin/arm64 binary instead (Download at {{.url}}.)": "",
"You can also use 'minikube kubectl -- get pods' to invoke a matching version": "「 minikube kubectl -- get pods 」で、一致するバージョンを表示することができます",
"You can delete them using the following command(s):": "以下のコマンドで削除することができます",
"You can delete them using the following command(s): ": "",
"You can force an unsupported Kubernetes version via the --force flag": "",
"You cannot add or remove extra disks for an existing minikube cluster. Please first delete the cluster.": "",
"You cannot change the CPUs for an existing minikube cluster. Please first delete the cluster.": "",
"You cannot change the disk size for an existing minikube cluster. Please first delete the cluster.": "",
"You cannot change the memory size for an existing minikube cluster. Please first delete the cluster.": "",
"You have authenticated with a service account that does not have an associated JSON. The GCP Auth requires credentials with a JSON file to in order to continue. The image pull secret has been imported.": "",
"You have chosen to disable the CNI but the \\\"{{.name}}\\\" container runtime requires CNI": "",
"You have selected \"virtualbox\" driver, but there are better options !\nFor better performance and support consider using a different driver: {{.drivers}}\n\nTo turn off this warning run:\n\n\t$ minikube config set WantVirtualBoxDriverWarning false\n\n\nTo learn more about on minikube drivers checkout https://minikube.sigs.k8s.io/docs/drivers/\nTo see benchmarks checkout https://minikube.sigs.k8s.io/docs/benchmarks/cpuusage/\n\n": "",
"You may need to manually remove the \"{{.name}}\" VM from your hypervisor": "ハイパーバイザから「{{.name}}」VM を手動で削除することが必要な可能性があります",
"You may need to stop the Hyper-V Manager and run `minikube delete` again.": "Hyper-V マネージャを停止して、「 minikube delete 」を再実行する必要があるかもしれません ",
"You might be using an amd64 version of minikube on a M1 Mac, use the arm64 version of minikube instead": "",
"You must specify a service name": "サービスの名前を明示する必要があります",
"Your GCP credentials will now be mounted into every pod created in the {{.name}} cluster.": "",
"Your cgroup does not allow setting memory.": "",
"Your host does not support KVM virtualization. Ensure that qemu-kvm is installed, and run 'virt-host-validate' to debug the problem": "ホストマシーンは KVM 仮想化をサポートしていません。 qemu-kvm がインストールされていることを確認してください。「 virt-host-validate 」を実行して、デバッグしてください",
"Your host does not support virtualization. If you are running minikube within a VM, try '--driver=docker'. Otherwise, enable virtualization in your BIOS": "ホストマシーンは仮想化をサポートしていません。もし VM 内で minikube を動かすのであれば、「 --driver=docker 」を試してください。そうでなければ、 BIOS で仮想化を有効にしてください",
"Your host is failing to route packets to the minikube VM. If you have VPN software, try turning it off or configuring it so that it does not re-route traffic to the VM IP. If not, check your VM environment routing options.": "ホストマシーンが minikube の VM にパケットをルーティングすることができていません。もし VPN を有効しているのであれば、VPN を無効にする、あるいは VM の IP アドレスに再ルーティングしないように設定してください。もし VPN を使用していないのであれば、 VM 環境のルーティング周りのオプションを確認してください",
"Your minikube config refers to an unsupported driver. Erase ~/.minikube, and try again.": "今の minikube の設定はサポートされていないドライバーを参照しています。 ~/.minikube を削除して、もう一度試してください",
"Your minikube vm is not running, try minikube start.": "minikube の VM が動いていません。以下のコマンドを試してみてください。 minikube start",
"[WARNING] For full functionality, the 'csi-hostpath-driver' addon requires the 'volumesnapshots' addon to be enabled.\n\nYou can enable 'volumesnapshots' addon by running: 'minikube addons enable volumesnapshots'\n": "",
"VirtualBox and Hyper-V are having a conflict. Use '--driver=hyperv' or disable Hyper-V using: 'bcdedit /set hypervisorlaunchtype off'": "VirtualBox と Hyper-V が衝突しています。'--driver=hyperv' を使用するか、次のコマンドで Hyper-V を無効にしてください: 'bcdedit /set hypervisorlaunchtype off'",
"VirtualBox cannot create a network, probably because it conflicts with an existing network that minikube no longer knows about. Try running 'minikube delete'": "VirtualBox がネットワークを作成できません。おそらく minikube が最早把握していない既存ネットワークと衝突しています。'minikube delete' を実行してみてください",
"VirtualBox is broken. Disable real-time anti-virus software, reboot, and reinstall VirtualBox if the problem continues.": "VirtualBox が故障しています。問題が解決しない場合、リアルタイムのアンチウィルスソフトを無効化し、OS を再起動して、VirtualBox を再インストールしてください",
"VirtualBox is broken. Reinstall VirtualBox, reboot, and run 'minikube delete'.": "VirtualBox が故障しています。 VirtualBox を再インストールして OS を再起動し、'minikube delete' を実行してください。",
"VirtualBox is unable to find its network interface. Try upgrading to the latest release and rebooting.": "VirtualBox はネットワークインターフェイスを検出できません。最新版にアップデートして、OS を再起動してみてください。",
"Virtualization support is disabled on your computer. If you are running minikube within a VM, try '--driver=docker'. Otherwise, consult your systems BIOS manual for how to enable virtualization.": "このコンピューターでは仮想化サポートが無効です。VM 内で minikube を実行する場合、'--driver=docker' を試してみてください。そうでなければ、仮想化を有効化する方法を BIOS の説明書を調べてください",
"Wait failed: {{.error}}": "待機に失敗しました: {{.error}}",
"Wait until Kubernetes core services are healthy before exiting": "終了する前に、Kubernetes コアサービスが正常になるまで待機してください",
"Want kubectl {{.version}}? Try 'minikube kubectl -- get pods -A'": "kubectl {{.version}} が必要ですか? 'minikube kubectl -- get pods -A' を試してみてください",
"Where to root the NFS Shares, defaults to /nfsshares (hyperkit driver only)": "NFS 共有のルートに指定する場所。デフォルトは /nfsshares (hyperkit ドライバーのみ)",
"Whether to use external switch over Default Switch if virtual switch not explicitly specified. (hyperv driver only)": "仮想スイッチが明示的に設定されていない場合、Default Switch 越しに外部のスイッチを使用するかどうか (Hyper-V ドライバーのみ)。",
"With --network-plugin=cni, you will need to provide your own CNI. See --cni flag as a user-friendly alternative": "--network-plugin=cni を用いる場合、自身の CNI を提供する必要があります。便利な代替策として --cni フラグを参照してください",
"You appear to be using a proxy, but your NO_PROXY environment does not include the minikube IP ({{.ip_address}}).": "プロキシーを使用しようとしていますが、minikube の IP ({{.ip_address}}) が NO_PROXY 環境変数に含まれていません。",
"You appear to be using a proxy, but your NO_PROXY environment does not include the minikube IP ({{.ip_address}}). Please see {{.documentation_url}} for more details": "プロキシーを使用しようとしていますが、minikube の IP ({{.ip_address}}) が NO_PROXY 環境変数に含まれていません。詳細は {{.documentation_url}} を参照してください",
"You are trying to run a windows .exe binary inside WSL. For better integration please use a Linux binary instead (Download at https://minikube.sigs.k8s.io/docs/start/.). Otherwise if you still want to do this, you can do it using --force": "WSL 内で Windows の .exe バイナリーを実行しようとしています。これより優れた統合として、Linux バイナリーを代わりに使用してください (https://minikube.sigs.k8s.io/docs/start/ でダウンロードしてください)。そうではなく、引き続きこのバイナリーを使用したい場合、--force オプションを使用してください",
"You are trying to run amd64 binary on M1 system. Please consider running darwin/arm64 binary instead (Download at {{.url}}.)": "M1 システム上で amd64 バイナリーを実行しようとしています。darwin/arm64 バイナリーを代わりに実行することをご検討ください ({{.url}} でダウンロードしてください)。",
"You can also use 'minikube kubectl -- get pods' to invoke a matching version": "一致するバージョンを実行するために、'minikube kubectl -- get pods' も使用できます",
"You can delete them using the following command(s):": "次のコマンドで削除できます:",
"You can delete them using the following command(s): ": "次のコマンドで削除できます: ",
"You can force an unsupported Kubernetes version via the --force flag": "--force フラグを介して、サポート外の Kubernetes バージョンを強制的に使用できます",
"You cannot add or remove extra disks for an existing minikube cluster. Please first delete the cluster.": "既存の minikube クラスターに対して、外部ディスクを追加または削除できません。最初にクラスターを削除してください。",
"You cannot change the CPUs for an existing minikube cluster. Please first delete the cluster.": "既存の minikube クラスターに対して、CPU を変更できません。最初にクラスターを削除してください。",
"You cannot change the disk size for an existing minikube cluster. Please first delete the cluster.": "既存の minikube クラスターに対して、ディスクサイズを変更できません。最初にクラスターを削除してください。",
"You cannot change the memory size for an existing minikube cluster. Please first delete the cluster.": "既存の minikube クラスターに対して、メモリサイズを変更できません。最初にクラスターを削除してください。",
"You have authenticated with a service account that does not have an associated JSON. The GCP Auth requires credentials with a JSON file to in order to continue. The image pull secret has been imported.": "関連する JSON がないサービスアカウントで認証しています。GCP Auth は、作業を続行するために JSON ファイル付きクレデンシャルを要求します。イメージ取得シークレットがインポートされました。",
"You have chosen to disable the CNI but the \\\"{{.name}}\\\" container runtime requires CNI": "CNI 無効が選択されましたが、「{{.name}}」コンテナランタイムは CNI が必要です",
"You have selected \"virtualbox\" driver, but there are better options !\nFor better performance and support consider using a different driver: {{.drivers}}\n\nTo turn off this warning run:\n\n\t$ minikube config set WantVirtualBoxDriverWarning false\n\n\nTo learn more about on minikube drivers checkout https://minikube.sigs.k8s.io/docs/drivers/\nTo see benchmarks checkout https://minikube.sigs.k8s.io/docs/benchmarks/cpuusage/\n\n": "「virtualbox」ドライバーが選択されましたが、より良い選択肢があります!\n性能と機能の向上のため、別のドライバー使用を検討してください: {{.drivers}}\n\nこの警告を表示させないためには、以下を実行してください:\n\n\t$ minikube config set WantVirtualBoxDriverWarning false\n\n\nminikube ドライバーについてもっと知るためには、https://minikube.sigs.k8s.io/docs/drivers/ を確認してください。\nベンチマークについては https://minikube.sigs.k8s.io/docs/benchmarks/cpuusage/ を確認してください\n\n",
"You may need to manually remove the \"{{.name}}\" VM from your hypervisor": "ハイパーバイザから「{{.name}}」VM を手動で削除することが必要かもしれません",
"You may need to stop the Hyper-V Manager and run `minikube delete` again.": "Hyper-V マネージャーを停止して、'minikube delete' を再度実行する必要があるかもしれません。",
"You might be using an amd64 version of minikube on a M1 Mac, use the arm64 version of minikube instead": "M1 Mac 上で amd64 版 minikube を使用しているかもしれません。代わりに arm64 版 minikube を使用してください",
"You must specify a service name": "サービス名を指定する必要があります",
"Your GCP credentials will now be mounted into every pod created in the {{.name}} cluster.": "あなたの GCP クレデンシャルは、{{.name}} クラスターに作成された各 Pod にマウントされます。",
"Your cgroup does not allow setting memory.": "あなたの cgroup ではメモリーの設定ができません。",
"Your host does not support KVM virtualization. Ensure that qemu-kvm is installed, and run 'virt-host-validate' to debug the problem": "ホスト KVM 仮想化をサポートしていません。 qemu-kvm がインストールされていることを確認し、'virt-host-validate' を実行して問題を調査してください",
"Your host does not support virtualization. If you are running minikube within a VM, try '--driver=docker'. Otherwise, enable virtualization in your BIOS": "ホストが仮想化をサポートしていません。VM 内で minikube を動かしている場合、'--driver=docker' を試してください。そうでなければ、 BIOS で仮想化を有効化してください",
"Your host is failing to route packets to the minikube VM. If you have VPN software, try turning it off or configuring it so that it does not re-route traffic to the VM IP. If not, check your VM environment routing options.": "ホストが minikube の VM へのパケットルーティングに失敗しています。VPN ソフトウェアがある場合、VPN を無効にするか、VM の IP アドレスにトラフィックを再ルーティングしないように VPN を設定してください。VPN ソフトウェアがない場合、VM 環境のルーティングオプションを確認してください。",
"Your minikube config refers to an unsupported driver. Erase ~/.minikube, and try again.": "minikube 設定がサポートされていないドライバーを参照しています。 ~/.minikube を削除して、もう一度試してください",
"Your minikube vm is not running, try minikube start.": "minikube の VM が実行されていません。minikube start を試してみてください。",
"[WARNING] For full functionality, the 'csi-hostpath-driver' addon requires the 'volumesnapshots' addon to be enabled.\n\nYou can enable 'volumesnapshots' addon by running: 'minikube addons enable volumesnapshots'\n": "[警告] フル機能のために、'csi-hostpath-driver' アドオンが 'volumesnapshots' アドオンの有効化を要求しています。\n\n'minikube addons enable volumesnapshots' を実行して 'volumesnapshots' を有効化できます\n",
"[{{.id}}] {{.msg}} {{.error}}": "[{{.id}}] {{.msg}} {{.error}}",
"\\\"minikube cache\\\" will be deprecated in upcoming versions, please switch to \\\"minikube image load\\\"": "",
"adding node": "ノードを追加しています",

View File

@ -163,6 +163,7 @@
"Documentation: {{.url}}": "문서: {{.url}}",
"Done! kubectl is now configured to use \"{{.name}}\"": "끝났습니다! 이제 kubectl 이 \"{{.name}}\" 를 사용할 수 있도록 설정되었습니다",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "끝났습니다! kubectl이 \"{{.name}}\" 클러스터와 \"{{.ns}}\" 네임스페이스를 기본적으로 사용하도록 구성되었습니다.",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "다운로드가 성공하였습니다!",
"Downloading Kubernetes {{.version}} preload ...": "쿠버네티스 {{.version}} 을 다운로드 중 ...",
"Downloading VM boot image ...": "가상 머신 부트 이미지 다운로드 중 ...",
@ -337,7 +338,7 @@
"Have you set up libvirt correctly?": "libvirt 설정을 알맞게 하셨습니까?",
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"IP Address to use to expose ports (docker and podman driver only)": "",
"IP address (ssh driver only)": "",
"If present, writes to the provided file instead of stdout.": "",
@ -346,6 +347,7 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "",
"If set, install addons. Defaults to true.": "",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "",
"If set, unpause all namespaces": "",
"If the above advice does not help, please let us know:": "",
@ -594,9 +596,11 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "",
"StartHost failed, but will try again: {{.error}}": "",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "{{.cluster}} 클러스터의 {{.name}} 컨트롤 플레인 노드를 시작하는 중",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting node": "노드를 시작하는 중",
"Starting node {{.name}} in cluster {{.cluster}}": "{{.cluster}} 클러스터의 {{.name}} 노드를 시작하는 중",
"Starting tunnel for service {{.service}}.": "{{.service}} 서비스의 터널을 시작하는 중",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "로컬 쿠버네티스 클러스터를 시작합니다",
"Starts a local kubernetes cluster": "로컬 쿠버네티스 클러스터를 시작합니다",
"Starts a node.": "노드를 시작합니다",
@ -699,6 +703,7 @@
"The value passed to --format is invalid: {{.error}}": "",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "",
"These changes will take effect upon a minikube delete and then a minikube start": "",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "",
"This control plane is not running! (state={{.state}})": "",
@ -748,9 +753,7 @@
"Unable to load host": "",
"Unable to load profile: {{.error}}": "",
"Unable to parse \"{{.kubernetes_version}}\": {{.error}}": " \"{{.kubernetes_version}}\" 를 파싱할 수 없습니다: {{.error}}",
"Unable to parse default Kubernetes version from constants: {{.error}}": "",
"Unable to parse memory '{{.memory}}': {{.error}}": "",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "",
"Unable to pick a default driver. Here is what was considered, in preference order:": "",
"Unable to push cached images: {{.error}}": "",
"Unable to remove machine directory": "",

View File

@ -163,6 +163,7 @@
"Done! kubectl is now configured to use \"{{.name}}": "Gotowe! kubectl jest skonfigurowany do użycia z \"{{.name}}\".",
"Done! kubectl is now configured to use \"{{.name}}\"": "Gotowe! kubectl jest skonfigurowany do użycia z \"{{.name}}\".",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "Pobieranie zakończone!",
"Downloading Kubernetes {{.version}} preload ...": "",
"Downloading VM boot image ...": "Pobieranie obrazu maszyny wirtualnej ...",
@ -323,7 +324,7 @@
"Have you set up libvirt correctly?": "Czy napewno skonfigurowano libvirt w sposób prawidłowy?",
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"IP Address to use to expose ports (docker and podman driver only)": "",
"IP address (ssh driver only)": "",
"If present, writes to the provided file instead of stdout.": "",
@ -332,6 +333,7 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "",
"If set, install addons. Defaults to true.": "",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "",
"If set, unpause all namespaces": "",
"If the above advice does not help, please let us know:": "",
@ -594,8 +596,9 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "",
"StartHost failed, but will try again: {{.error}}": "",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "",
"Starting node {{.name}} in cluster {{.cluster}}": "",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting tunnel for service {{.service}}.": "",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "",
"Starts a local kubernetes cluster": "Uruchamianie lokalnego klastra kubernetesa",
"Starts a node.": "",
@ -709,6 +712,7 @@
"The {{.driver_name}} driver should not be used with root privileges.": "{{.driver_name}} nie powinien być używany z przywilejami root'a.",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "",
"These changes will take effect upon a minikube delete and then a minikube start": "",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "",
"This control plane is not running! (state={{.state}})": "",
@ -758,9 +762,7 @@
"Unable to load host": "",
"Unable to load profile: {{.error}}": "",
"Unable to parse \"{{.kubernetes_version}}\": {{.error}}": "",
"Unable to parse default Kubernetes version from constants: {{.error}}": "",
"Unable to parse memory '{{.memory}}': {{.error}}": "",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "",
"Unable to pick a default driver. Here is what was considered, in preference order:": "",
"Unable to push cached images: {{.error}}": "",
"Unable to remove machine directory": "",

View File

@ -147,6 +147,7 @@
"Docs have been saved at - {{.path}}": "",
"Documentation: {{.url}}": "",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "",
"Downloading Kubernetes {{.version}} preload ...": "",
"Downloading VM boot image ...": "",
@ -294,7 +295,7 @@
"Group ID: {{.groupID}}": "",
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"IP Address to use to expose ports (docker and podman driver only)": "",
"IP address (ssh driver only)": "",
"If present, writes to the provided file instead of stdout.": "",
@ -303,6 +304,7 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "",
"If set, install addons. Defaults to true.": "",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "",
"If set, unpause all namespaces": "",
"If the above advice does not help, please let us know:": "",
@ -545,8 +547,9 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "",
"StartHost failed, but will try again: {{.error}}": "",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "",
"Starting node {{.name}} in cluster {{.cluster}}": "",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting tunnel for service {{.service}}.": "",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "",
"Starts a node.": "",
"Starts an existing stopped node in a cluster.": "",
@ -646,6 +649,7 @@
"The value passed to --format is invalid: {{.error}}": "",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "",
"These changes will take effect upon a minikube delete and then a minikube start": "",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "",
"This control plane is not running! (state={{.state}})": "",
@ -692,9 +696,7 @@
"Unable to load host": "",
"Unable to load profile: {{.error}}": "",
"Unable to parse \"{{.kubernetes_version}}\": {{.error}}": "",
"Unable to parse default Kubernetes version from constants: {{.error}}": "",
"Unable to parse memory '{{.memory}}': {{.error}}": "",
"Unable to parse oldest Kubernetes version from constants: {{.error}}": "",
"Unable to pick a default driver. Here is what was considered, in preference order:": "",
"Unable to push cached images: {{.error}}": "",
"Unable to remove machine directory": "",

View File

@ -188,6 +188,7 @@
"Done! kubectl is now configured to use \"{{.name}}\"": "完成kubectl 已经配置至 \"{{.name}}\"",
"Done! kubectl is now configured to use \"{{.name}}\" cluster and \"{{.ns}}\" namespace by default": "",
"Done! kubectl is now configured to use {{.name}}": "完成kubectl已经配置至{{.name}}",
"Done! minikube is ready without Kubernetes!": "",
"Download complete!": "下载完成!",
"Downloading Kubernetes {{.version}} preload ...": "",
"Downloading VM boot image ...": "正在下载 VM boot image...",
@ -393,7 +394,7 @@
"Hide the hypervisor signature from the guest in minikube (kvm2 driver only)": "向 minikube 中的访客隐藏管理程序签名(仅限 kvm2 驱动程序)",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --vm-driver": "Hyperkit 已损坏。升级到最新的 hyperkit 版本以及/或者 Docker 桌面版。或者,你可以通过 --vm-driver 切换其他选项",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --driver": "",
"Hyperkit networking is broken. Try disabling Internet Sharing: System Preference \u003e Sharing \u003e Internet Sharing. \nAlternatively, you can try upgrading to the latest hyperkit version, or using an alternate driver.": "",
"Hyperkit networking is broken. Upgrade to the latest hyperkit version and/or Docker for Desktop. Alternatively, you may choose an alternate --vm-driver": "Hyperkit 的网络挂了。升级到最新的 hyperkit 版本以及/或者 Docker 桌面版。或者,你可以通过 --vm-driver 切换其他选项",
"IP Address to use to expose ports (docker and podman driver only)": "",
"IP address (ssh driver only)": "",
@ -403,6 +404,7 @@
"If set, download tarball of preloaded images if available to improve start time. Defaults to true.": "",
"If set, force the container runtime to use systemd as cgroup manager. Defaults to false.": "",
"If set, install addons. Defaults to true.": "",
"If set, minikube VM/container will start without starting or configuring Kubernetes. (only works on new clusters)": "",
"If set, pause all namespaces": "",
"If set, unpause all namespaces": "",
"If the above advice does not help, please let us know:": "",
@ -676,8 +678,9 @@
"Specifying extra disks is currently only supported for the following drivers: {{.supported_drivers}}. If you can contribute to add this feature, please create a PR.": "",
"StartHost failed, but will try again: {{.error}}": "",
"Starting control plane node {{.name}} in cluster {{.cluster}}": "",
"Starting node {{.name}} in cluster {{.cluster}}": "",
"Starting minikube without Kubernetes {{.name}} in cluster {{.cluster}}": "",
"Starting tunnel for service {{.service}}.": "",
"Starting worker node {{.name}} in cluster {{.cluster}}": "",
"Starts a local Kubernetes cluster": "",
"Starts a local kubernetes cluster": "启动本地 kubernetes 集群",
"Starts a node.": "",
@ -798,6 +801,7 @@
"There's a new version for '{{.driver_executable}}'. Please consider upgrading. {{.documentation_url}}": "“{{.driver_executable}}”有一个新版本。请考虑升级。{{.documentation_url}}",
"These --extra-config parameters are invalid: {{.invalid_extra_opts}}": "",
"These changes will take effect upon a minikube delete and then a minikube start": "",
"Things to try without Kubernetes ...": "",
"This addon does not have an endpoint defined for the 'addons open' command.\nYou can add one by annotating a service with the label {{.labelName}}:{{.addonName}}": "",
"This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true": "此操作还可通过设置环境变量 CHANGE_MINIKUBE_NONE_USER=true 自动完成",
"This control plane is not running! (state={{.state}})": "",