title: Google Compute Engine: Required 'compute.instances.get' permission error
body: <p>I am trying to connect to GCloud using CircleCI and deploy my code. I can successfully authenticate my service account user using:</p>
  
  <pre><code>gcloud --quiet auth activate-service-account --key-file=${HOME}/gcloud-service-key.json
          gcloud --quiet config set project ${GOOGLE_PROJECT_ID}
          gcloud --quiet config set compute/zone ${GOOGLE_COMPUTE_ZONE}
  </code></pre>
  
  <p>However, when I try to use the code below to deploy:</p>
  
  <pre><code>gcloud --quiet compute scp --recurse /[Folder_name] [Instance_Name]:/var/www/test --zone=northamerica-northeast1-a --project [Project_Name]
  </code></pre>
  
  <p>I get the following error:</p>
  
  <pre><code>ERROR: (gcloud.compute.scp) Could not fetch resource:
  - Required 'compute.instances.get' permission for [Instance_name]
  </code></pre>
  
  <p>I have looked at the rights and looks like the service user has admin rights, which should include instances.get permission as well according to <a href="https://cloud.google.com/compute/docs/access/" rel="nofollow noreferrer">this</a>.</p>
  
  <p><a href="https://i.stack.imgur.com/IrWMx.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/IrWMx.png" alt="enter image description here"></a></p>
  
  <p>I think my question is similar to <a href="https://stackoverflow.com/questions/48232189/google-compute-engine-required-compute-zones-get-permission-error">this</a>; however, the solution proposed there is not working, which is why I am asking a separate question. How can I solve this problem?</p>