• k8s-merge-robot's avatar
    Merge pull request #25285 from ingvagabund/extend-secrets-volumes-with-path-control · eb733cbf
    k8s-merge-robot authored
    Automatic merge from submit-queue
    
    Extend secrets volumes with path control
    
    As per [1] this PR extends secrets mapped into volume with:
    
    * key-to-path mapping the same way as is for configmap. E.g.
    
    ```
    {
     "apiVersion": "v1",
     "kind": "Pod",
      "metadata": {
        "name": "mypod",
        "namespace": "default"
      },
      "spec": {
        "containers": [{
          "name": "mypod",
          "image": "redis",
          "volumeMounts": [{
            "name": "foo",
            "mountPath": "/etc/foo",
            "readOnly": true
          }]
        }],
        "volumes": [{
          "name": "foo",
          "secret": {
            "secretName": "mysecret",
            "items": [{
              "key": "username",
              "path": "my-username"
            }]
          }
        }]
      }
    }
    ```
    
    Here the ``spec.volumes[0].secret.items`` added changing original target ``/etc/foo/username`` to ``/etc/foo/my-username``.
    
    * secondly, refactoring ``pkg/volumes/secrets/secrets.go`` volume plugin to use ``AtomicWritter`` to project a secret into file.
    
    [1] https://github.com/kubernetes/kubernetes/blob/master/docs/design/configmap.md#changes-to-secret
    eb733cbf
Name
Last commit
Last update
..
annotations Loading commit data...
endpoints Loading commit data...
errors Loading commit data...
install Loading commit data...
meta Loading commit data...
pod Loading commit data...
resource Loading commit data...
rest Loading commit data...
service Loading commit data...
testapi Loading commit data...
testing Loading commit data...
unversioned Loading commit data...
util Loading commit data...
v1 Loading commit data...
validation Loading commit data...
OWNERS Loading commit data...
context.go Loading commit data...
context_test.go Loading commit data...
conversion.go Loading commit data...
conversion_test.go Loading commit data...
copy_test.go Loading commit data...
deep_copy_generated.go Loading commit data...
deep_copy_test.go Loading commit data...
doc.go Loading commit data...
field_constants.go Loading commit data...
generate.go Loading commit data...
generate_test.go Loading commit data...
helpers.go Loading commit data...
helpers_test.go Loading commit data...
mapper.go Loading commit data...
meta.go Loading commit data...
meta_test.go Loading commit data...
node_example.json Loading commit data...
pod_example.json Loading commit data...
ref.go Loading commit data...
ref_test.go Loading commit data...
register.go Loading commit data...
replication_controller_example.json Loading commit data...
requestcontext.go Loading commit data...
resource_helpers.go Loading commit data...
resource_helpers_test.go Loading commit data...
serialization_proto_test.go Loading commit data...
serialization_test.go Loading commit data...
types.generated.go Loading commit data...
types.go Loading commit data...