github.com/shashidharatd/test-infra@v0.0.0-20171006011030-71304e1ca560/queue_health/upload-service-account.sh (about)

     1  #!/bin/bash
     2  # Copyright 2016 The Kubernetes Authors.
     3  #
     4  # Licensed under the Apache License, Version 2.0 (the "License");
     5  # you may not use this file except in compliance with the License.
     6  # You may obtain a copy of the License at
     7  #
     8  #     http://www.apache.org/licenses/LICENSE-2.0
     9  #
    10  # Unless required by applicable law or agreed to in writing, software
    11  # distributed under the License is distributed on an "AS IS" BASIS,
    12  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13  # See the License for the specific language governing permissions and
    14  # limitations under the License.
    15  
    16  
    17  if [[ -z "${1}" ]]; then
    18    echo "Usage: $(basename "${0}") </path/to/foo-service-account.json>"
    19    echo '  Visit https://console.developers.google.com/iam-admin/serviceaccounts/project'
    20    echo '  Create and download the json key for a service accout with storage-rw scope'
    21    exit 1
    22  fi
    23  
    24  path="${1}"
    25  
    26  if [[ ! -f "${path}" ]]; then
    27    echo "Account does not exist"
    28    exit 1
    29  fi
    30  
    31  if ! grep private_key_id "${path}"; then
    32    echo "${path} does not appear to be a valid .json service account file"
    33    exit 1
    34  fi
    35  
    36  echo 'Copying key to secrets/queue-health-service-account'
    37  kubectl create secret generic queue-health-service-account \
    38    --from-file=service-account.json="${path}"