Используя учетные данные учетной записи службы, я успешно запустил Cloud Build, чтобы запустить gsutil, переместить файлы из gs в экземпляр, а затем скопировать их обратно. Все в порядке.
Один из шагов Cloud Build успешно загружает изображение docker из внешнего источника, оно загружается нормально и успешно сообщает свою справочную информацию. Но при запуске происходит сбой с сообщением об ошибке: «Не удалось открыть файл» ..intermediary_work_product_file. В разрешении отказано.
Для приложения, которое я запускаю на этом этапе, эта ошибка обычно возникает, когда файл не может быть записан в его расположение по умолчанию. Я установил dir = "/ workspace", чтобы подтвердить значение по умолчанию.
Итак, как мне предоставить разрешения на чтение / запись приложению, работающему на этапе сборки Cloud, чтобы записать его собственный промежуточный рабочий продукт в локальные папки? Сама облачная сборка работает нормально с использованием учетных данных служебного аккаунта. Пытались добавить дополнительные разрешения, в том числе с ролями администратора Storage, Cloud Run, Compute Engine, App Engine. Но та же ошибка.
Я предполагаю, что учетные данные, использованные для создания экземпляра, передаются во время выполнения. Мы углубились в документацию и примеры GCP CloudBuild, но не нашли ответов.
Должно быть что-то фундаментальное, что я упускаю .