mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 22:17:14 +00:00
Revert "Add the ability to edit fields within a config map."
This reverts commit 31eca372c9
.
This commit is contained in:
parent
5ab741deed
commit
83e06d9fd1
@ -58,7 +58,6 @@ docs/man/man1/kubectl-create.1
|
|||||||
docs/man/man1/kubectl-delete.1
|
docs/man/man1/kubectl-delete.1
|
||||||
docs/man/man1/kubectl-describe.1
|
docs/man/man1/kubectl-describe.1
|
||||||
docs/man/man1/kubectl-drain.1
|
docs/man/man1/kubectl-drain.1
|
||||||
docs/man/man1/kubectl-edit-configmap.1
|
|
||||||
docs/man/man1/kubectl-edit.1
|
docs/man/man1/kubectl-edit.1
|
||||||
docs/man/man1/kubectl-exec.1
|
docs/man/man1/kubectl-exec.1
|
||||||
docs/man/man1/kubectl-explain.1
|
docs/man/man1/kubectl-explain.1
|
||||||
@ -143,7 +142,6 @@ docs/user-guide/kubectl/kubectl_delete.md
|
|||||||
docs/user-guide/kubectl/kubectl_describe.md
|
docs/user-guide/kubectl/kubectl_describe.md
|
||||||
docs/user-guide/kubectl/kubectl_drain.md
|
docs/user-guide/kubectl/kubectl_drain.md
|
||||||
docs/user-guide/kubectl/kubectl_edit.md
|
docs/user-guide/kubectl/kubectl_edit.md
|
||||||
docs/user-guide/kubectl/kubectl_edit_configmap.md
|
|
||||||
docs/user-guide/kubectl/kubectl_exec.md
|
docs/user-guide/kubectl/kubectl_exec.md
|
||||||
docs/user-guide/kubectl/kubectl_explain.md
|
docs/user-guide/kubectl/kubectl_explain.md
|
||||||
docs/user-guide/kubectl/kubectl_expose.md
|
docs/user-guide/kubectl/kubectl_expose.md
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
This file is autogenerated, but we've stopped checking such files into the
|
|
||||||
repository to reduce the need for rebases. Please run hack/generate-docs.sh to
|
|
||||||
populate this file.
|
|
@ -1,7 +0,0 @@
|
|||||||
This file is autogenerated, but we've stopped checking such files into the
|
|
||||||
repository to reduce the need for rebases. Please run hack/generate-docs.sh to
|
|
||||||
populate this file.
|
|
||||||
|
|
||||||
<!-- BEGIN MUNGE: GENERATED_ANALYTICS -->
|
|
||||||
[]()
|
|
||||||
<!-- END MUNGE: GENERATED_ANALYTICS -->
|
|
@ -97,7 +97,6 @@ concurrent-resource-quota-syncs
|
|||||||
concurrent-serviceaccount-token-syncs
|
concurrent-serviceaccount-token-syncs
|
||||||
concurrent-service-syncs
|
concurrent-service-syncs
|
||||||
config-map
|
config-map
|
||||||
config-map-data
|
|
||||||
config-map-namespace
|
config-map-namespace
|
||||||
config-sync-period
|
config-sync-period
|
||||||
configure-cloud-routes
|
configure-cloud-routes
|
||||||
|
@ -38,7 +38,6 @@ go_library(
|
|||||||
"describe.go",
|
"describe.go",
|
||||||
"drain.go",
|
"drain.go",
|
||||||
"edit.go",
|
"edit.go",
|
||||||
"edit_configmap.go",
|
|
||||||
"exec.go",
|
"exec.go",
|
||||||
"explain.go",
|
"explain.go",
|
||||||
"expose.go",
|
"expose.go",
|
||||||
|
@ -101,20 +101,12 @@ func NewCmdEdit(f cmdutil.Factory, out, errOut io.Writer) *cobra.Command {
|
|||||||
Long: editLong,
|
Long: editLong,
|
||||||
Example: fmt.Sprintf(editExample),
|
Example: fmt.Sprintf(editExample),
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(cmd *cobra.Command, args []string) {
|
||||||
args = append([]string{"configmap"}, args...)
|
|
||||||
err := RunEdit(f, out, errOut, cmd, args, options)
|
err := RunEdit(f, out, errOut, cmd, args, options)
|
||||||
cmdutil.CheckErr(err)
|
cmdutil.CheckErr(err)
|
||||||
},
|
},
|
||||||
ValidArgs: validArgs,
|
ValidArgs: validArgs,
|
||||||
ArgAliases: argAliases,
|
ArgAliases: argAliases,
|
||||||
}
|
}
|
||||||
addEditFlags(cmd, options)
|
|
||||||
|
|
||||||
cmd.AddCommand(NewCmdEditConfigMap(f, out, errOut))
|
|
||||||
return cmd
|
|
||||||
}
|
|
||||||
|
|
||||||
func addEditFlags(cmd *cobra.Command, options *resource.FilenameOptions) {
|
|
||||||
usage := "to use to edit the resource"
|
usage := "to use to edit the resource"
|
||||||
cmdutil.AddFilenameOptionFlags(cmd, options, usage)
|
cmdutil.AddFilenameOptionFlags(cmd, options, usage)
|
||||||
cmdutil.AddValidateFlags(cmd)
|
cmdutil.AddValidateFlags(cmd)
|
||||||
@ -124,6 +116,7 @@ func addEditFlags(cmd *cobra.Command, options *resource.FilenameOptions) {
|
|||||||
cmdutil.AddApplyAnnotationFlags(cmd)
|
cmdutil.AddApplyAnnotationFlags(cmd)
|
||||||
cmdutil.AddRecordFlag(cmd)
|
cmdutil.AddRecordFlag(cmd)
|
||||||
cmdutil.AddInclude3rdPartyFlags(cmd)
|
cmdutil.AddInclude3rdPartyFlags(cmd)
|
||||||
|
return cmd
|
||||||
}
|
}
|
||||||
|
|
||||||
func RunEdit(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args []string, options *resource.FilenameOptions) error {
|
func RunEdit(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args []string, options *resource.FilenameOptions) error {
|
||||||
|
@ -1,96 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2016 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.
|
|
||||||
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 cmd
|
|
||||||
|
|
||||||
import (
|
|
||||||
"bytes"
|
|
||||||
"fmt"
|
|
||||||
"io"
|
|
||||||
"os"
|
|
||||||
|
|
||||||
"github.com/spf13/cobra"
|
|
||||||
"k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
|
|
||||||
"k8s.io/kubernetes/pkg/kubectl/cmd/util/editor"
|
|
||||||
"k8s.io/kubernetes/pkg/kubectl/resource"
|
|
||||||
)
|
|
||||||
|
|
||||||
// NewCmdEditConfigMap is a macro command to edit config maps
|
|
||||||
func NewCmdEditConfigMap(f cmdutil.Factory, cmdOut, errOut io.Writer) *cobra.Command {
|
|
||||||
options := &resource.FilenameOptions{}
|
|
||||||
|
|
||||||
cmd := &cobra.Command{
|
|
||||||
Use: "configmap",
|
|
||||||
Aliases: []string{"cm"},
|
|
||||||
Short: "Edit a config map object.",
|
|
||||||
Long: "Edit and update a config map object",
|
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
|
||||||
RunEditConfigMap(cmd, f, args, cmdOut, errOut, options)
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
addEditFlags(cmd, options)
|
|
||||||
cmd.Flags().String("config-map-data", "", "If non-empty, specify the name of a data slot in a config map to edit.")
|
|
||||||
return cmd
|
|
||||||
}
|
|
||||||
|
|
||||||
// RunEditConfigMap runs the edit command for config maps. It either edits the complete map
|
|
||||||
// or it edits individual files inside the config map.
|
|
||||||
func RunEditConfigMap(cmd *cobra.Command, f cmdutil.Factory, args []string, cmdOut, errOut io.Writer, options *resource.FilenameOptions) error {
|
|
||||||
dataFile := cmdutil.GetFlagString(cmd, "config-map-data")
|
|
||||||
if len(dataFile) == 0 {
|
|
||||||
// We need to add the resource type back on to the front
|
|
||||||
args = append([]string{"configmap"}, args...)
|
|
||||||
return RunEdit(f, cmdOut, errOut, cmd, args, options)
|
|
||||||
}
|
|
||||||
cmdNamespace, _, err := f.DefaultNamespace()
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
cs, err := f.ClientSet()
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
configMap, err := cs.Core().ConfigMaps(cmdNamespace).Get(args[0], v1.GetOptions{})
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
value, found := configMap.Data[dataFile]
|
|
||||||
if !found {
|
|
||||||
keys := []string{}
|
|
||||||
for key := range configMap.Data {
|
|
||||||
keys = append(keys, key)
|
|
||||||
}
|
|
||||||
return fmt.Errorf("No such data file (%s), filenames are: %v\n", dataFile, keys)
|
|
||||||
}
|
|
||||||
edit := editor.NewDefaultEditor(os.Environ())
|
|
||||||
data, file, err := edit.LaunchTempFile(fmt.Sprintf("%s-edit-", dataFile), "", bytes.NewBuffer([]byte(value)))
|
|
||||||
defer func() {
|
|
||||||
os.Remove(file)
|
|
||||||
}()
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
configMap.Data[dataFile] = string(data)
|
|
||||||
|
|
||||||
if _, err := cs.Core().ConfigMaps(cmdNamespace).Update(configMap); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user