solutions/project/hub-env/org-policies/exceptions/compute-restrict-vpc-peering-except-hub-project.yaml (18 lines of code) (raw):

# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. ######### # # GCP Organization Policies # Org policies that correspond with a Guardrail will contain a label indicating what Guardrails it helps in enforcing # https://cloud.google.com/resource-manager/docs/organization-policy/org-policy-constraints # # Constraint: constraints/compute.restrictVpcPeering # # This list constraint defines the set of VPC networks # that are allowed to be peered with the VPC networks belonging to this project, folder, or organization. # The allowed/denied list of networks must be identified in the form: # under:organizations/ORGANIZATION_ID, under:folders/FOLDER_ID, under:projects/PROJECT_ID, # or projects/PROJECT_ID/global/networks/NETWORK_NAME. # # This exception is for the VPCs in the hub project. It allows any vpc under this organization to be peered with # the VPCs in the hub project. # ######### apiVersion: resourcemanager.cnrm.cloud.google.com/v1beta1 kind: ResourceManagerPolicy metadata: name: compute-restrict-vpc-peering-except-hub-project namespace: policies annotations: config.kubernetes.io/depends-on: resourcemanager.cnrm.cloud.google.com/namespaces/projects/Project/hub-project-id # kpt-set: resourcemanager.cnrm.cloud.google.com/namespaces/projects/Project/${hub-project-id} labels: guardrail: "true" guardrail-enforced: guardrail-09 spec: constraint: "constraints/compute.restrictVpcPeering" listPolicy: allow: values: # kpt-set: ${project-allowed-restrict-vpc-peering} - under:organizations/ORGANIZATION_ID projectRef: external: "0000000000" # kpt-set: ${hub-project-id}