Skip to content

Commit

Permalink
Fix incorrect advice about creating a secret (#16004)
Browse files Browse the repository at this point in the history
* 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 <[email protected]>

* Make secret escaping instructions consistent
  • Loading branch information
verb authored and k8s-ci-robot committed Sep 26, 2019
1 parent 6e07eee commit fbc03c8
Showing 1 changed file with 10 additions and 8 deletions.
18 changes: 10 additions & 8 deletions content/en/docs/concepts/configuration/secret.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 >}}

Expand Down Expand Up @@ -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:
Expand Down

0 comments on commit fbc03c8

Please sign in to comment.