Я могу создать новый паб / подтему в моих шаблонах и новую учетную запись службы
Я вижу, как предоставить этой учетной записи проекта широкий доступ к пабу / субсайту: https://cloud.google.com/deployment-manager/docs/configuration/set-access-control-resources
Также в этом примере, похоже, используется другой тип ресурса, это мой шаблон:
resources:
- name: "mytopic"
type: gcp-types/pubsub-v1:projects.topics
#type: pubsub-v1ubsub.v1.topic
properties:
topic: "mytopic"
labels:
my-lable: mytopic
Я использую gcp-types/pubsub-v1:projects.topics
, когда я переключаюсь на pubsub-v1ubsub.v1.topic
Я получаю:
- code: RESOURCE_NOT_FOUND
message: The type [pubsub-v1ubsub.v1.topic] was not found.
Если я пытаюсь добавить accessControl
к gcp-types/pubsub-v1:projects.topics
, я получаю:
- code: RESOURCE_ERROR
location: /deployments/mydeployment/resources/mytopic
message: '{"ResourceType":"gcp-types/pubsub-v1:projects.topics","ResourceErrorCode":"404","ResourceErrorMessage":{"statusMessage":"Not
Found","requestPath":"https://pubsub.googleapis.com/v1/:setIamPolicy","httpMethod":"POST"}}
Я хочу создать новую тему, новую учетную запись службы и предоставить этой учетной записи службы доступ к этой конкретной теме только .
Возможно ли это в диспетчере развертывания?
Это полный шаблон с accessControl:
resources:
- name: "mytopic"
type: gcp-types/pubsub-v1:projects.topics
#type: pubsub-v1ubsub.v1.topic
properties:
topic: "mytopic"
labels:
label: "sdfsdfsdf"
accessControl:
gcpIamPolicy:
bindings:
- role: roles/pubsub.editor
members:
- "serviceAccount:zzz@abc.iam.gserviceaccount.com"
- role: roles/pubsub.publisher
members:
- "serviceAccount:zzz@abc.iam.gserviceaccount.com"
РЕДАКТИРОВАТЬ: так что я думаю, что это работаетно теперь у меня есть вопрос о зависимостях. Нужно ли объявлять, что ресурс acl зависит от ресурса pub / sub? Или это не нужно? Если я не включаю его, он работает, но я хочу подтвердить, что он никогда не потерпит неудачу, и попытаться сначала развернуть ACL или что-то в этом роде. Кроме того, Google, добавьте полный пример к своим документам, пожалуйста. это сделало бы их гораздо более доступными
resources:
- name: "mytopic"
type: gcp-types/pubsub-v1:projects.topics
properties:
topic: "mytopic"
- name: "mytopic-permissions"
type: pubsub.v1.topic
properties:
topic: "mytopic"
accessControl:
gcpIamPolicy:
bindings:
- role: roles/pubsub.editor
members:
- "serviceAccount:xxxx@abc.iam.gserviceaccount.com"
- role: roles/pubsub.publisher
members:
- "serviceAccount:xxxx@abc.iam.gserviceaccount.com"
# Do I need this? If I dont have it deploys still seem to work
metadata:
dependsOn:
- "mytopic"