What do I do:
1) Login into a build agent under build agent user
2) Manually login in GCP with google auth
3) Add GCS as an artifact storage to the build
4) Choose default agent authentication
5) Run the build
6) Try to download a build’s artifact
What do I see: Internal error from a plugin on a web page
What do I expect to see: Either download an artifact or open gcs so I can download it myself
Debugging this issue I came up with this:
GCS api requires to have JSON key to create a secret url for an artifact
There is a related error message when I try to enable these urls from the artifact storage config page
Agents can upload artifacts to GCS with default auth
TeamCity and Agents can not download artifacts as they seem to use secret url API
Just improving error handling and better error messaging may be a good way to fix it. Switching to JSON service account key fixed everything but it was really hard to guess that it is actually required.
What do I do: 1) Login into a build agent under build agent user 2) Manually login in GCP with google auth 3) Add GCS as an artifact storage to the build 4) Choose default agent authentication 5) Run the build 6) Try to download a build’s artifact
What do I see: Internal error from a plugin on a web page What do I expect to see: Either download an artifact or open gcs so I can download it myself
Debugging this issue I came up with this:
Just improving error handling and better error messaging may be a good way to fix it. Switching to JSON service account key fixed everything but it was really hard to guess that it is actually required.