@pulumi/google-compliance-policies
Version:
This repository contains a growing set of Compliance Policies to validate your infrastructure using Pulumi's Crossguard Policy-as-Code framework.
272 lines (271 loc) • 13.1 kB
JavaScript
"use strict";
// Copyright 2016-2024, Pulumi Corporation.
//
// 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.
//
// ------------------------------- WARNING -------------------------------------
// This file was programmatically generated. Do not edit unless you know what
// you're doing.
// ------------------------------- WARNING -------------------------------------
Object.defineProperty(exports, "__esModule", { value: true });
exports.UtilizationReport = exports.TargetProject = exports.Source = exports.MigratingVm = exports.Group = exports.DatacenterConnector = exports.CutoverJob = exports.CloneJob = void 0;
const policy_1 = require("@pulumi/policy");
const compliance_policy_manager_1 = require("@pulumi/compliance-policy-manager");
const v1alpha1_1 = require("@pulumi/google-native/vmmigration/v1alpha1");
const v1alpha1_2 = require("@pulumi/google-native/vmmigration/v1alpha1");
const v1alpha1_3 = require("@pulumi/google-native/vmmigration/v1alpha1");
const v1alpha1_4 = require("@pulumi/google-native/vmmigration/v1alpha1");
const v1alpha1_5 = require("@pulumi/google-native/vmmigration/v1alpha1");
const v1alpha1_6 = require("@pulumi/google-native/vmmigration/v1alpha1");
const v1alpha1_7 = require("@pulumi/google-native/vmmigration/v1alpha1");
const v1alpha1_8 = require("@pulumi/google-native/vmmigration/v1alpha1");
var CloneJob;
(function (CloneJob) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.CloneJob).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
CloneJob.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-clonejob-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.CloneJob).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_1.CloneJob, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration CloneJob shouldn't use an unstable API (vmmigration.v1alpha1.CloneJob).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(CloneJob || (CloneJob = {}));
exports.CloneJob = CloneJob;
var CutoverJob;
(function (CutoverJob) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.CutoverJob).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
CutoverJob.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-cutoverjob-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.CutoverJob).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_2.CutoverJob, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration CutoverJob shouldn't use an unstable API (vmmigration.v1alpha1.CutoverJob).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(CutoverJob || (CutoverJob = {}));
exports.CutoverJob = CutoverJob;
var DatacenterConnector;
(function (DatacenterConnector) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.DatacenterConnector).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
DatacenterConnector.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-datacenterconnector-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.DatacenterConnector).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_3.DatacenterConnector, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration DatacenterConnector shouldn't use an unstable API (vmmigration.v1alpha1.DatacenterConnector).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(DatacenterConnector || (DatacenterConnector = {}));
exports.DatacenterConnector = DatacenterConnector;
var Group;
(function (Group) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.Group).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
Group.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-group-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.Group).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_4.Group, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration Group shouldn't use an unstable API (vmmigration.v1alpha1.Group).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(Group || (Group = {}));
exports.Group = Group;
var MigratingVm;
(function (MigratingVm) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.MigratingVm).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
MigratingVm.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-migratingvm-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.MigratingVm).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_5.MigratingVm, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration MigratingVm shouldn't use an unstable API (vmmigration.v1alpha1.MigratingVm).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(MigratingVm || (MigratingVm = {}));
exports.MigratingVm = MigratingVm;
var Source;
(function (Source) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.Source).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
Source.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-source-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.Source).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_6.Source, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration Source shouldn't use an unstable API (vmmigration.v1alpha1.Source).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(Source || (Source = {}));
exports.Source = Source;
var TargetProject;
(function (TargetProject) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.TargetProject).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
TargetProject.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-targetproject-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.TargetProject).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_7.TargetProject, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration TargetProject shouldn't use an unstable API (vmmigration.v1alpha1.TargetProject).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(TargetProject || (TargetProject = {}));
exports.TargetProject = TargetProject;
var UtilizationReport;
(function (UtilizationReport) {
/**
* Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.UtilizationReport).
*
* @severity medium
* @frameworks none
* @topics alpha, api, unstable
* @link https://cloud.google.com/apis/design/versioning
*/
UtilizationReport.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "googlenative-vmmigration-v1alpha1-utilizationreport-disallow-alpha-resource",
description: "Disallow the use of non-stable (Alpha) resouces (vmmigration.v1alpha1.UtilizationReport).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1alpha1_8.UtilizationReport, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Vmmigration UtilizationReport shouldn't use an unstable API (vmmigration.v1alpha1.UtilizationReport).");
}),
},
vendors: ["google"],
services: ["vmmigration"],
severity: "medium",
topics: ["api", "unstable", "alpha"],
});
})(UtilizationReport || (UtilizationReport = {}));
exports.UtilizationReport = UtilizationReport;