{"action":"created","issue":{"url":"https://api.github.com/repos/GoogleCloudPlatform/gcloud-golang/issues/245","repository_url":"https://api.github.com/repos/GoogleCloudPlatform/gcloud-golang","labels_url":"https://api.github.com/repos/GoogleCloudPlatform/gcloud-golang/issues/245/labels{/name}","comments_url":"https://api.github.com/repos/GoogleCloudPlatform/gcloud-golang/issues/245/comments","events_url":"https://api.github.com/repos/GoogleCloudPlatform/gcloud-golang/issues/245/events","html_url":"https://github.com/GoogleCloudPlatform/gcloud-golang/issues/245","id":149133743,"number":245,"title":"Naively downloading the demo and running it fails with 401 errors","user":{"login":"trixing","id":79466,"avatar_url":"https://avatars.githubusercontent.com/u/79466?v=3","gravatar_id":"","url":"https://api.github.com/users/trixing","html_url":"https://github.com/trixing","followers_url":"https://api.github.com/users/trixing/followers","following_url":"https://api.github.com/users/trixing/following{/other_user}","gists_url":"https://api.github.com/users/trixing/gists{/gist_id}","starred_url":"https://api.github.com/users/trixing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trixing/subscriptions","organizations_url":"https://api.github.com/users/trixing/orgs","repos_url":"https://api.github.com/users/trixing/repos","events_url":"https://api.github.com/users/trixing/events{/privacy}","received_events_url":"https://api.github.com/users/trixing/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2016-04-18T12:14:18Z","updated_at":"2016-05-18T01:36:29Z","closed_at":null,"body":"It's unclear with the instructions of how set it up that it actually works.  The documentation at https://cloud.google.com/appengine/docs/go/ doesn't seem to imply extra steps.\r\n\r\nSuper frustrating experience.\r\n\r\n ./goapp serve ../gcs_app\r\n\r\n2016/04/18 12:07:23 ERROR: createFile: unable to close bucket \"app_default_bucket\", file \"demo-testfile-go\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:26 ERROR: readFile: unable to open file from bucket \"app_default_bucket\", file \"demo-testfile-go\": storage: can't read object app_default_bucket/demo-testfile-go, status code: 401 Unauthorized\r\n2016/04/18 12:07:28 ERROR: copyFile: unable to copy /app_default_bucket/demo-testfile-go to bucket \"app_default_bucket\", file \"demo-testfile-go-copy\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:29 ERROR: statFile: unable to stat file from bucket \"app_default_bucket\", file \"demo-testfile-go\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:31 ERROR: createFile: unable to close bucket \"app_default_bucket\", file \"foo1\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:33 ERROR: createFile: unable to close bucket \"app_default_bucket\", file \"foo2\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:35 ERROR: createFile: unable to close bucket \"app_default_bucket\", file \"bar\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:37 ERROR: createFile: unable to close bucket \"app_default_bucket\", file \"bar/1\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:39 ERROR: createFile: unable to close bucket \"app_default_bucket\", file \"bar/2\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:41 ERROR: createFile: unable to close bucket \"app_default_bucket\", file \"boo/\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:43 ERROR: listBucket: unable to list bucket \"app_default_bucket\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:44 ERROR: listBucketDirMode: unable to list bucket \"app_default_bucket\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:46 ERROR: defaultACL: unable to list default object ACL for bucket \"app_default_bucket\": storage: error listing bucket ACL for bucket \"app_default_bucket\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:48 ERROR: putDefaultACLRule: unable to save default object ACL rule for bucket \"app_default_bucket\": storage: error updating default ACL entry for bucket \"app_default_bucket\", entity \"allUsers\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:49 ERROR: deleteDefaultACLRule: unable to delete default object ACL rule for bucket \"app_default_bucket\": storage: error deleting default ACL entry for bucket \"app_default_bucket\", entity \"allUsers\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:51 ERROR: dumpBucketACL: unable to list bucket ACL for bucket \"app_default_bucket\": storage: error listing bucket ACL for bucket \"app_default_bucket\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:53 ERROR: putBucketACLRule: unable to save bucket ACL rule for bucket \"app_default_bucket\": storage: error updating bucket ACL entry for bucket \"app_default_bucket\", entity \"allUsers\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:55 ERROR: deleteBucketACLRule: unable to delete bucket ACL rule for bucket \"app_default_bucket\": storage: error deleting bucket ACL entry for bucket \"app_default_bucket\", entity \"allUsers\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:56 ERROR: dumpACL: unable to list file ACL for bucket \"app_default_bucket\", file \"demo-testfile-go\": storage: error listing object ACL for bucket \"app_default_bucket\", file \"demo-testfile-go\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:58 ERROR: putACLRule: unable to save ACL rule for bucket \"app_default_bucket\", file \"demo-testfile-go\": storage: error updating object ACL entry for bucket \"app_default_bucket\", file \"demo-testfile-go\", entity \"allUsers\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:07:59 ERROR: deleteACLRule: unable to delete ACL rule for bucket \"app_default_bucket\", file \"demo-testfile-go\": storage: error deleting object ACL entry for bucket \"app_default_bucket\", file \"demo-testfile-go\", entity \"allUsers\": googleapi: Error 401: Invalid Credentials, authError\r\n2016/04/18 12:08:01 ERROR: deleteFiles: unable to delete bucket \"app_default_bucket\", file \"demo-testfile-go\": googleapi: Error 401: Invalid Credentials, authError\r\n"},"comment":{"url":"https://api.github.com/repos/GoogleCloudPlatform/gcloud-golang/issues/comments/219902311","html_url":"https://github.com/GoogleCloudPlatform/gcloud-golang/issues/245#issuecomment-219902311","issue_url":"https://api.github.com/repos/GoogleCloudPlatform/gcloud-golang/issues/245","id":219902311,"user":{"login":"okdave","id":1091335,"avatar_url":"https://avatars.githubusercontent.com/u/1091335?v=3","gravatar_id":"","url":"https://api.github.com/users/okdave","html_url":"https://github.com/okdave","followers_url":"https://api.github.com/users/okdave/followers","following_url":"https://api.github.com/users/okdave/following{/other_user}","gists_url":"https://api.github.com/users/okdave/gists{/gist_id}","starred_url":"https://api.github.com/users/okdave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/okdave/subscriptions","organizations_url":"https://api.github.com/users/okdave/orgs","repos_url":"https://api.github.com/users/okdave/repos","events_url":"https://api.github.com/users/okdave/events{/privacy}","received_events_url":"https://api.github.com/users/okdave/received_events","type":"User","site_admin":false},"created_at":"2016-05-18T01:36:29Z","updated_at":"2016-05-18T01:36:29Z","body":"Thanks @weistn for the write up – it looks like the key part is using the dev_appserver flag `--default_gcs_bucket_name` to control which bucket your app will try to contact."}}