Skip to content
Permalink
Browse files

Fix incorrect advice about creating a secret (#16004)

* Fix incorrect advice about creating a secret

The existing command does not use code style as required by the style
guide and it is incorrect as rendered. Also, there's an easier way to do
this.

* Add reviewer suggested improvement for secret escaping

Adding sftim's suggestion phrasing explanation of escaping shell special characters.

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Make secret escaping instructions consistent
  • Loading branch information...
verb authored and k8s-ci-robot committed Sep 26, 2019
1 parent 6e07eee commit fbc03c8ec67e6267fa6f9adf4af1e0db8af30bb0
Showing with 10 additions and 8 deletions.
  1. +10 −8 content/en/docs/concepts/configuration/secret.md
@@ -76,9 +76,12 @@ kubectl create secret generic db-user-pass --from-file=./username.txt --from-fil
secret "db-user-pass" created
```
{{< note >}}
Special characters such as `$`, `\*`, and `!` require escaping.
If the password you are using has special characters, you need to escape them using the `\\` character. For example, if your actual password is `S!B\*d$zDsb`, you should execute the command this way:
kubectl create secret generic dev-db-secret --from-literal=username=devuser --from-literal=password=S\\!B\\\\*d\\$zDsb
Special characters such as `$`, `\`, `*`, and `!` will be interpreted by your [shell](https://en.wikipedia.org/wiki/Shell_\(computing\)) and require escaping. In most common shells, the easiest way to escape the password is to surround it with single quotes (`'`). For example, if your actual password is `S!B\*d$zDsb`, you should execute the command this way:

```
kubectl create secret generic dev-db-secret --from-literal=username=devuser --from-literal=password='S!B\*d$zDsb'
```

You do not need to escape special characters in passwords from files (`--from-file`).
{{< /note >}}

@@ -794,14 +797,13 @@ kubectl create secret generic test-db-secret --from-literal=username=testuser --
secret "test-db-secret" created
```
{{< note >}}
Special characters such as `$`, `\*`, and `!` require escaping.
If the password you are using has special characters, you need to escape them using the `\\` character. For example, if your actual password is `S!B\*d$zDsb`, you should execute the command this way:
Special characters such as `$`, `\`, `*`, and `!` will be interpreted by your [shell](https://en.wikipedia.org/wiki/Shell_\(computing\)) and require escaping. In most common shells, the easiest way to escape the password is to surround it with single quotes (`'`). For example, if your actual password is `S!B\*d$zDsb`, you should execute the command this way:

```shell
kubectl create secret generic dev-db-secret --from-literal=username=devuser --from-literal=password=S\\!B\\\*d\\$zDsb
```
kubectl create secret generic dev-db-secret --from-literal=username=devuser --from-literal=password='S!B\*d$zDsb'
```

You do not need to escape special characters in passwords from files (`--from-file`).
You do not need to escape special characters in passwords from files (`--from-file`).
{{< /note >}}

Now make the pods:

0 comments on commit fbc03c8

Please sign in to comment.
You can’t perform that action at this time.